Compare commits

..

1 Commits

Author SHA1 Message Date
Jaehyun Cho a2534f6ece live_edit: Apply base scale in live edit.
When a part is added in live edit, base scale is applied to the part.
2016-08-19 18:49:03 +09:00
106 changed files with 2771 additions and 5559 deletions

4
.arcconfig Normal file
View File

@ -0,0 +1,4 @@
{
"project_id" : "Enventor",
"conduit_uri" : "https://phab.enlightenment.org/"
}

1
.gitignore vendored
View File

@ -4,7 +4,6 @@
*.edj
*.swp
*.eet
*.exe
*~
.*
*.eo.*

View File

@ -1,4 +1,4 @@
Hermet Park <hermetpark@gmail.com>
Hermet Park <hermet@hermet.pe.kr>
Cedric Bail <cedric.bail@free.fr>
Raoul Hecky <raoul.hecky@gmail.com>
Daniel Juyung Seo <seojuyung2@gmail.com>
@ -28,7 +28,3 @@ Yongheon Shin <yongheon.shin@samsung.com>
Vyacheslav Reutskiy <v.reutskiy@samsung.com>
Bowon Ryu <bowon.ryu@samsung.com>
Jean Guyomarc'h <jean@guyomarch.bzh>
Thiep Ha <thiep.ha@samsung.com>
YeongJong Lee <cleanlyj@naver.com>
Massimo Maiurana <maiurana@gmail.com>
Amitesh Singh <amitesh.sh@samsung.com>

View File

@ -0,0 +1,19 @@
if HAVE_EOLIAN_CXX
EOLIAN_CXX = @eolian_cxx@
_EOLIAN_CXX_DEP = @eolian_cxx@
else
EOLIAN_CXX = EFL_RUN_IN_TREE=1 $(top_builddir)/src/bin/eolian_cxx/eolian_cxx${EXEEXT}
_EOLIAN_CXX_DEP = bin/eolian_cxx/eolian_cxx${EXEEXT}
endif
AM_V_EOLCXX = $(am__v_EOLCXX_@AM_V@)
am__v_EOLCXX_ = $(am__v_EOLCXX_@AM_DEFAULT_V@)
am__v_EOLCXX_0 = @echo " EOLCXX " $@;
SUFFIXES += .eo.hh
%.eo.hh: %.eo $(_EOLIAN_CXX_DEP)
$(AM_V_EOLCXX)$(EOLIAN_CXX) $(EOLIAN_FLAGS) -o $@ $<
CLEANFILES += $(BUILT_SOURCES)

24
Makefile_Eolian_Helper.am Normal file
View File

@ -0,0 +1,24 @@
if HAVE_EOLIAN_GEN
EOLIAN_GEN = @eolian_gen@
_EOLIAN_GEN_DEP = @eolian_gen@
else
EOLIAN_GEN = EFL_RUN_IN_TREE=1 $(top_builddir)/src/bin/eolian/eolian_gen${EXEEXT}
_EOLIAN_GEN_DEP = bin/eolian/eolian_gen${EXEEXT}
endif
AM_V_EOL = $(am__v_EOL_@AM_V@)
am__v_EOL_ = $(am__v_EOL_@AM_DEFAULT_V@)
am__v_EOL_0 = @echo " EOLIAN " $@;
SUFFIXES = .eo .eo.c .eo.h .eo.legacy.h
%.eo.c: %.eo ${_EOLIAN_GEN_DEP}
$(AM_V_EOL)$(EOLIAN_GEN) --legacy $(EOLIAN_FLAGS) --gc -o $@ $<
%.eo.h: %.eo ${_EOLIAN_GEN_DEP}
$(AM_V_EOL)$(EOLIAN_GEN) $(EOLIAN_FLAGS) --gh -o $@ $<
%.eo.legacy.h: %.eo ${_EOLIAN_GEN_DEP}
$(AM_V_EOL)$(EOLIAN_GEN) --legacy $(EOLIAN_FLAGS) --gh -o $@ $<
CLEANFILES += $(BUILT_SOURCES)

56
NEWS
View File

@ -1,57 +1,7 @@
==============
Enventor 1.0.0
Enventor 0.9.0
==============
Changes since Enventor 0.9.0:
-----------------------------
Additions:
* Tooltips: Newly supported.
* Wireframe: Newly introduced.
* File Tab: Newly introduced.
* Reference Popup: Newly introduced.
* A lot of Enventor APIs are changed.
Improvements:
* EDC Editor: Rearrange searched part to be placed in center.
* EDC Editor: Support to jump to the part define.
* File Borwser: Set current directory as a workspace in default.
* File Browser: add a function to set a main edc file with a marker.
* File Browser: Display sorted file list based on file type.
* File Browser: Skip files if their names were started with dot.
* Template: Add various samples.
* New File: Sort template list in alphabetical order.
* Help: Update overall content.
* Setting: Apply layze style to syntax color template code.
* Setting: Add the main EDC file path.
* Live Edit: support base_scale values.
* Console: Apply syntax color for error messages:.
* EDC Parser: Identify whole macro functions to have syntax color.
* Support vector type part.
* Update overall GUIs & Shortcut keys.
* Support individual group view size and view scale.
* Limit to an single Enventor instance.
* Update Syntax color keywords.
* Allow multi-file editor.
Fixes:
* Template: Fix Map template code typo.
* Template: don't localize floats in the relative values.
* Statusbar: Fix an incorrect view size.
* Indentation: Fix a incorrect indentation in a corner case.
* Live Edit: Fix incorrect stacking.
* Live Edit: Fix an added object to have min size properly.
* Live Edit: Dismiss ctxpopup when view position is changed.
* Goto: Fix window closing issue.
* Setting: Fix to not abuse user Elementary configuration file.
* Setting: Reset font style properly.
* EDC Editor: Show images on cursor "images.image".
* EDC Editor: Fix to remove focus highlight on template seletion button.
* Fix many crash scenarios.
* Fix a dummy swallow/spacer selection bug.
* Fix Undo's indiscriminate red alert.
* Fix build break on Win32.
Changes since Enventor 0.8.0:
-----------------------------
@ -96,7 +46,7 @@ Fixes:
* EDC Editor: Compare name elaborately to search the clicked part correctly.
* Live Edit: Fix malfunction of key input on Windows.
* Live Edit: Fix center guide text positioning problem.
* Live View: Update dummy part when removing all source code.
* Live View: Update dummpy part when removing all source code.
* RedoUndo: Correct work with unicode symbols.
* Template: Fix the error of line position when inserting group template.
* Template: Fix line count of textblock part inserted in live edit mode.
@ -108,7 +58,7 @@ Fixes:
* Ctxpopup: Don't display image previews if the selected image string is in comments.
* Auto Completion: Fix its list moved to selected part name position.
* Fix a crash issue when removing all code in edc editor.
* Fix a compilation issue when new empty file is opened.
* Fix a complation issue when new empty file is opened.
* Fix a color selector to scalable.
Changes since Enventor 0.7.0:

18
README
View File

@ -1,14 +1,15 @@
[Enventor v1.0.0]
[Enventor v0.9.0]
Enventor, which is also known as EDC (Edje Data Collections) Editor, is a EDC script editor tool that supports text editing and previewing functions for the EDC source code.
Enventor, which is also known as EDC (Edje Data Collections) Editor, is a EDC script editor tool that supports text edit function and preview function for EDC source code.
When your application requires real-time changeable layouts like animated ones, then you can write the layout design using EDC script, compile it into EDJ format file, and import it into your application using a UI layout component. You can also write design layouts from simple to complex ones using the EDC script with Enventor. Enventor helps you write EDC script code easier and finish your work faster. If you are not familiar with EDC programming, see Edje Programming Guide - https://www.enlightenment.org/program_guide/edje_pg for more information.
When your application ral-time changeable layouts like animated ones, then you could write those layout design using EDC script, compile it to EDJ format file then import it into your application using an UI layout component. But not only for that, you can write any kinds of design layouts from simple to complex ones if you use EDC script with Enventor. Enventor helps you write EDC script code eaiser and finish your work faster. If you are not familiar with EDC programming, then please visit to Edje Programming Guide - https://www.enlightenment.org/program_guide/edje_pg for more information.
[Requirements]
efl (>= 1.18.0)
efl (>= 1.17.0)
elementary (>= 1.17.0)
Please note that some features may not quite function correctly or completely prior to EFL 1.18. Newer would be better.
Please note that some features may not quite function correctly or completely prior to EFL 1.17. Newer would be better.
Please see the following sites for more information.
@ -23,7 +24,7 @@ Once you have met the requirements, compiling and installing is simple:
$ ./autogen.sh
$ make
$ sudo make install
$ sudo ldconfig (it may need on Linux System)
$ sudo ldconfig (it may need on Linux System)
[Short Cut Keys]
@ -46,7 +47,7 @@ Ctrl+U - Toggle Dummy Parts
Ctrl+H - Toggle Part Highlighting
Ctrl+M - Toggle Mirror Mode
Ctrl+W - Toggle Wireframes
Ctrl+T - Insert Default Template Code
Ctrl+T - Insert Defaut Template Code
Ctrl+Mouse Wheel Up - View Zoom In / Font Size Up
Ctrl+Mouse Wheel Down - View Zoom Out / Font Size Down
@ -56,7 +57,7 @@ Alt+Up - Toggle Full Console View
Alt+Down - Toggle Full Editors View
Ctrl+A - Select Text All
Ctrl+Double Click - Select a word without openning candidate popup
Ctrl+Double Click - Select a word
Ctrl+Z - Undo Text
Ctrl+R - Redo Text
Ctrl+C - Copy Selected Text
@ -104,7 +105,6 @@ Jaehyun Cho
Mykyta Biliavskyi
Kateryna Fesyna
Tae-Hyup Kim
Bowon Ryu
Yunho Jeong
Mincheol Seo
Raoul Hecky

View File

@ -1,8 +1,8 @@
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
m4_define([v_maj], [1])
m4_define([v_min], [0])
m4_define([v_mic], [99])
m4_define([v_maj], [0])
m4_define([v_min], [9])
m4_define([v_mic], [0])
#m4_define([v_rev], m4_esyscmd([(git rev-list --count HEAD 2>/dev/null || echo 0) | tr -d '\n']))dnl
##-- When released, remove the dnl on the below line
dnl m4_undefine([v_rev])
@ -17,7 +17,7 @@ m4_define([lt_age], v_min)
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
AC_INIT(enventor, [v_ver], hermetpark@gmail.com)
AC_INIT(enventor, [v_ver], hermet@hermet.pe.kr)
AC_PREREQ(2.52)
AC_CONFIG_SRCDIR(configure.ac)
AC_CONFIG_MACRO_DIR([m4])
@ -30,8 +30,6 @@ AM_INIT_AUTOMAKE(1.6 dist-bzip2 dist-xz)
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_CONFIG_HEADERS(config.h)
AC_GNU_SOURCE
lt_cv_deplibs_check_method=pass_all
LT_INIT([win32-dll])
AC_PROG_LIBTOOL
AM_PROG_CC_C_O
ELM_QUICKLAUNCH
@ -71,15 +69,14 @@ ENVENTOR_VERSION_MINOR=v_min
AC_SUBST(ENVENTOR_VERSION_MAJOR)
AC_SUBST(ENVENTOR_VERSION_MINOR)
EFL_ENABLE_EO_API_SUPPORT
EFL_ENABLE_BETA_API_SUPPORT
AC_DEFINE_UNQUOTED(ENVENTOR_WIN32_BUILD_SUPPORT, 1, "Support Win32 dllexport")
AC_DEFINE_UNQUOTED(ENVENTOR_BETA_API_SUPPORT, 1, "Enable access to unstable ENVENTOR API that are still in beta")
AC_DEFINE_UNQUOTED(EFL_UI_FOCUS_OBJECT_PROTECTED, 1, "Enable Focus Protected API")
efl_version="1.18.0"
efl_version="1.17.0"
requirement_enventor=" \
eo >= ${efl_version} \
efl >= ${efl_version} \
eina >= ${efl_version} \
eet >= ${efl_version} \
elementary >= ${efl_version} \
@ -96,9 +93,21 @@ PKG_CHECK_MODULES([ENVENTOR], [${requirement_enventor}])
### Checks for linker characteristics
# Needs to be moved into a macro, and also, needs a way to automatically fetch from all the dependencies using the Requires.
DEPS_EOLIAN_FLAGS=`${PKG_CONFIG} --variable=eolian_flags eo evas edje ecore elementary efl`
AC_SUBST([DEPS_EOLIAN_FLAGS])
EFL_ATTRIBUTE_UNUSED
# Check edje_cc
EFL_WITH_BIN([eet], [eet-eet], [eet])
EFL_WITH_BIN([edje], [edje-cc], [edje_cc])
EFL_WITH_BIN([eolian], [eolian-gen], [eolian_gen])
EFL_WITH_BIN([eolian-cxx], [eolian-cxx], [eolian_cxx])
# Force the helper to try external eolian generator
AM_CONDITIONAL([HAVE_EOLIAN_GEN], [true])
AM_CONDITIONAL([HAVE_EOLIAN_CXX], [true])
AC_CONFIG_FILES([
po/Makefile.in
@ -106,6 +115,7 @@ Makefile
src/Makefile
src/include/Makefile
src/lib/Makefile
src/lib/Enventor.h
src/bin/Makefile
data/Makefile
data/desktop/Makefile

View File

@ -2,20 +2,6 @@ group "lexem" struct {
group "nodes" list {
group "lexem" struct {
group "nodes" list {
group "lexem" struct {
group "nodes" list {
}
group "txt" var_array {
count 1;
value "string" string: "%s: ;"
}
value "cursor_offset" int: 1;
value "line_back" int: 0;
group "name" var_array {
count 1;
value "string" string: "base_scale";
}
}
group "lexem" struct {
group "nodes" list {
group "lexem" struct {
@ -1595,13 +1581,12 @@ group "lexem" struct {
value "cursor_offset" int: 4;
value "line_back" int: 1;
group "name" var_array {
count 14;
count 13;
value "string" string: "image";
value "string" string: "group";
value "string" string: "swallow";
value "string" string: "external";
value "string" string: "rect";
value "string" string: "snapshot";
value "string" string: "spacer";
value "string" string: "proxy";
value "string" string: "box";

View File

@ -1,14 +0,0 @@
custom_target('autocomp.eet',
input : 'autocomp.src',
output : 'autocomp.eet',
command : eet_exe + [
'-e',
join_paths(meson.current_build_dir(), 'autocomp.eet'),
'node',
join_paths(meson.current_source_dir(), 'autocomp.src'),
'1'
],
install : true,
install_dir : join_paths(dir_pkgdata, 'autocomp')
)

View File

@ -40,8 +40,6 @@ group "syntax_color_group" struct {
value "key" string: "externals";
value "key" string: "external";
value "key" string: "fill";
value "key" string: "filters";
value "key" string: "filter";
value "key" string: "fonts";
value "key" string: "gradient";
value "key" string: "group";
@ -68,7 +66,6 @@ group "syntax_color_group" struct {
value "key" string: "script";
value "key" string: "set.";
value "key" string: "set ";
value "key" string: "snapshot";
value "key" string: "sounds";
value "key" string: "spacer";
value "key" string: "styles";
@ -100,7 +97,6 @@ group "syntax_color_group" struct {
value "key" string: "border";
value "key" string: "center";
value "key" string: "clip_to";
value "key" string: "code";
value "key" string: "color2";
value "key" string: "color3";
value "key" string: "color_class:";
@ -110,11 +106,9 @@ group "syntax_color_group" struct {
value "key" string: "effect";
value "key" string: "ellipsis";
value "key" string: "entry_mode";
value "key" string: "file";
value "key" string: "fixed";
value "key" string: "focal";
value "key" string: "font";
value "key" string: "hid";
value "key" string: "ignore_flags";
value "key" string: "image";
value "key" string: "inherit";

View File

@ -1,19 +0,0 @@
custom_target('color.eet',
input : 'edc.src',
output : 'edc.eet',
command : eet_exe + [
'-e',
join_paths(meson.current_build_dir(), 'edc.eet'),
'color',
join_paths(meson.current_source_dir(), 'edc.src'),
'1'
],
install : true,
install_dir : join_paths(dir_pkgdata, 'color')
)
install_data(
sources : 'syntax_template.dat',
install_dir : join_paths(dir_pkgdata, 'color')
)

View File

@ -3,8 +3,6 @@ Encoding=UTF-8
Type=Application
Name=Enventor
Comment=Enlightenment EDC Editor
Comment[fr]=Éditeur de fichiers EDC
Comment[it]=Editor per i file EDC di Enlightenment
Comment[ru]=Редактор EDC-файлов
Icon=enventor
Exec=enventor

View File

@ -1,5 +0,0 @@
install_data(
sources : 'enventor.desktop',
install_dir : join_paths(dir_data, 'applications')
)

View File

@ -41,7 +41,7 @@
* EDC Editor: Compare name elaborately to search the clicked part correctly.<br>
* Live Edit: Fix malfunction of key input on Windows.<br>
* Live Edit: Fix center guide text positioning problem.<br>
* Live View: Update dummy part when removing all source code.<br>
* Live View: Update dummpy part when removing all source code.<br>
* RedoUndo: Correct work with unicode symbols.<br>
* Template: Fix the error of line position when inserting group template.<br>
* Template: Fix line count of textblock part inserted in live edit mode.<br>
@ -53,7 +53,7 @@
* Ctxpopup: Don't display image previews if the selected image string is in comments.<br>
* Auto Completion: Fix its list moved to selected part name position.<br>
* Fix a crash issue when removing all code in edc editor.<br>
* Fix a compilation issue when new empty file is opened.<br>
* Fix a complation issue when new empty file is opened.<br>
* Fix a color selector to scalable.<br>
<br>
Please see NEWS for more information.

View File

@ -1,8 +1,8 @@
<b>Enventor v1.0.0</b></br>
<b>Enventor v0.9.0</b></br>
</br>
Enventor, which is also known as EDC (Edje Data Collections) Editor, is a EDC script editor tool that supports text editing and previewing functions for the EDC source code.</br>
Enventor, which is also known as EDC (Edje Data Collections) Editor, is a EDC script editor tool that supports text edit function and preview function for EDC source code</br>
</br>
When your application requires real-time changeable layouts like animated ones, then you can write the layout design using EDC script, compile it into EDJ format file, and import it into your application using a UI layout component. You can also write design layouts from simple to complex ones using the EDC script with Enventor. Enventor helps you write EDC script code easier and finish your work faster. If you are not familiar with EDC programming, see Edje Programming Guide - https://www.enlightenment.org/program_guide/edje_pg for more information.</br>
When your application ral-time changeable layouts like animated ones, then you could write those layout design using EDC script, compile it to EDJ format file then import it into your application using an UI layout component. But not only for that, you can write any kinds of design layouts from simple to complex ones if you use EDC script with Enventor. Enventor helps you write EDC script code eaiser and finish your work faster. If you are not familiar with EDC programming, then please visit to Edje Programming Guide - https://www.enlightenment.org/program_guide/edje_pg for more information.</br>
</br>
Please see the following sites for more information.</br>
</br>

View File

@ -17,7 +17,7 @@
Ctrl+H - Toggle Part Highlighting</br>
Ctrl+M - Toggle Mirror Mode</br>
Ctrl+W - Toggle Wireframes</br>
Ctrl+T - Insert Default Template Code</br>
Ctrl+T - Insert Defaut Template Code</br>
Ctrl+Mouse Wheel Up - View Zoom In / Font Size Up</br>
Ctrl+Mouse Wheel Down - View Zoom Out / Font Size Down</br>
</br>
@ -29,7 +29,7 @@
</br>
<b>Text Editor:</b></br>
Ctrl+A - Select Text All</br>
Ctrl+Double Click - Select a word without openning candidate popup</br>
Ctrl+Double Click - Select a word</br>
Ctrl+Z - Undo Text</br>
Ctrl+R - Redo Text</br>
Ctrl+C - Copy Selected Text</br>

View File

@ -1,13 +0,0 @@
help_files = [
'INTRO',
'HISTORY',
'SHORTCUT',
'COMMAND',
'DEVEL'
]
install_data(
sources : help_files,
install_dir : join_paths(dir_pkgdata, 'help')
)

View File

@ -1,5 +0,0 @@
install_data(
sources : 'enventor.png',
install_dir : join_paths(dir_data, 'icons')
)

View File

@ -1,3 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" stroke-linejoin="round" viewBox="50 -100 500 500">
<path fill="none" stroke="black" stroke-width="10" d="M 213,222 C 219,150 165,139 130,183 125,123 171,73.8 247,51.6 205,78 236,108 280,102 281,90.3 282,79 286,68.2 287,72 288,75.8 289,79.7 293,79.7 296,79.7 300,79.7 304,79.7 307,79.7 311,79.7 312,75.8 313,72 314,68.2 318,79 319,90.3 320,102 364,108 395,78 353,51.6 429,73.8 475,123 470,183 435,139 381,150 387,222 364,176 315,172 300,248 285,172 236,176 213,222 Z"/>
<path fill="none" stroke="black" stroke-width="10" d="M 213,222 C 219,150 165,139 130,183 125,123 171,73.8 247,51.6 205,78 236,108 280,102 281,90.3 282,79 286,68.2 287,72 288,75.8 289,79.7 293,79.7 296,79.7 300,79.7 304,79.7 307,79.7 311,79.7 312,75.8 313,72 314,68.2 318,79 319,90.3 320,102 364,108 395,78 353,51.6 429,73.8 475,123 470,183 435,139 381,150 387,222 364,176 315,172 300,248 285,172 236,176 213,222 Z">
</svg>

Before

Width:  |  Height:  |  Size: 516 B

After

Width:  |  Height:  |  Size: 533 B

View File

@ -1,59 +0,0 @@
image_files = [
'ENVENTOR_EMBEDDED_BAT1.svg',
'ENVENTOR_EMBEDDED_BAT2.svg',
'ENVENTOR_EMBEDDED_BG1.png',
'ENVENTOR_EMBEDDED_BG2.png',
'ENVENTOR_EMBEDDED_BG3.png',
'ENVENTOR_EMBEDDED_BUTTON_BG.png',
'ENVENTOR_EMBEDDED_BUTTON_BG_DOWN.png',
'ENVENTOR_EMBEDDED_BUTTON_BG_HOVER.png',
'ENVENTOR_EMBEDDED_CHERRY.png',
'ENVENTOR_EMBEDDED_FIELD.png',
'ENVENTOR_EMBEDDED_ICON_ARROW.png',
'ENVENTOR_EMBEDDED_ICON_BADGE.png',
'ENVENTOR_EMBEDDED_ICON_BADGE_DOWN.png',
'ENVENTOR_EMBEDDED_ICON_CLIP.png',
'ENVENTOR_EMBEDDED_ICON_CLIP_DOWN.png',
'ENVENTOR_EMBEDDED_ICON_DOCK.png',
'ENVENTOR_EMBEDDED_ICON_DOCK_DOWN.png',
'ENVENTOR_EMBEDDED_ICON_LOCK.png',
'ENVENTOR_EMBEDDED_ICON_LOCK_DOWN.png',
'ENVENTOR_EMBEDDED_IMAGE.png',
'ENVENTOR_EMBEDDED_LADDER.png',
'ENVENTOR_EMBEDDED_MASK.png',
'ENVENTOR_EMBEDDED_MELON.png',
'ENVENTOR_EMBEDDED_MONTH_STROKE.png',
'ENVENTOR_EMBEDDED_MOONPHASE_COVER.png',
'ENVENTOR_EMBEDDED_MOONPHASE_MOON.png',
'ENVENTOR_EMBEDDED_NEEDLE_HOUR.png',
'ENVENTOR_EMBEDDED_NEEDLE_HOUR_RECT.png',
'ENVENTOR_EMBEDDED_NEEDLE_MINUTE.png',
'ENVENTOR_EMBEDDED_NEEDLE_MINUTE_RECT.png',
'ENVENTOR_EMBEDDED_NEEDLE_SECOND.png',
'ENVENTOR_EMBEDDED_NEEDLE_SECOND_RECT.png',
'ENVENTOR_EMBEDDED_PLATFORM.png',
'ENVENTOR_EMBEDDED_SVG.svg',
'ENVENTOR_EMBEDDED_TACK.png',
'ENVENTOR_EMBEDDED_TRIAB-01.png',
'ENVENTOR_EMBEDDED_TRIAB-02.png',
'ENVENTOR_EMBEDDED_TRIAB-03.png',
'ENVENTOR_EMBEDDED_TRIAB-04.png',
'ENVENTOR_EMBEDDED_TRIAB-05.png',
'ENVENTOR_EMBEDDED_TRIAB-06.png',
'ENVENTOR_EMBEDDED_TRIAB-07.png',
'ENVENTOR_EMBEDDED_TRIAB-08.png',
'ENVENTOR_EMBEDDED_TRIAB-09.png',
'ENVENTOR_EMBEDDED_TRIAB-10.png',
'ENVENTOR_EMBEDDED_TRIAB-11.png',
'ENVENTOR_EMBEDDED_TRIAB-12.png',
'ENVENTOR_EMBEDDED_WATCHFACE.png',
'ENVENTOR_EMBEDDED_WATCHFACE_RECT.png',
'ENVENTOR_EMBEDDED_WATERMELON.png',
'enventor_logo.png',
]
install_data(
sources : image_files,
install_dir : join_paths(dir_pkgdata, 'images')
)

View File

@ -1,5 +0,0 @@
install_data(
sources : 'reference.src',
install_dir : join_paths(dir_pkgdata, 'reference')
)

View File

@ -1,6 +1,4 @@
collections { "The <hilight>collections</hilight> represents a theme.</br>The <hilight>collections</hilight> block contains a list of groups that composes a theme.";
base_scale { "The <hilight>base_scale</hilight> indicates the scale factor that the edc file is based on.</br>The size of a scalable object is multiplied with the device scale value. If the scalable object with the size 10 is created in a device with the scale 1.0, the size of the object is 20 in a device with the scale 2.0, and 40 in a device with the scale 4.0.</br>The relationship among scale, device scale and base scale is as follows.</br>Scale = Device Scale / Base Scale.";
}
color_classes { "The <hilight>color_classes</hilight> block contains a list of one or more <hilight>color_class</hilight> blocks.</br>Each <hilight>color_class</hilight> allows designers to name an arbitary group of colors to be used in the theme, the application can use that name to alter the color values at runtime.";
color_class { "The <hilight>color_class</hilight> allows designers to name an arbitrary group of colors to be used in the theme, the application can use that name to alter the color values at runtime.";
color { "The main color.";
@ -256,8 +254,6 @@ collections { "The <hilight>collections</hilight> represents a theme.</br>The <h
text { "The <hilight>text</hilight> block is used to define text properties.";
align { "Moves the text relatively along both axis inside the part.</br>For horizontal alignment, 0.0 moves the text to touch the left edge of the part and 1.0 moves the text to touch the right edge of the part.</br>For vertical alignment, 0.0 moves the text to touch the top edge of the part and 1.0 moves the text to touch the bottom edge of the part.</br>The default value is 0.5 0.5.";
}
domain { "Sets the domain name of the .mo file which has to be checked for translation.";
}
ellipsis { "Balances the text in a relative point from 0.0 to 1.0, this point is the last section of the string to be cut out in case of a resize that is smaller than the text itself.</br>The default value is 0.0.";
}
fit { "Specifies whether resizing the text to fit in the part or not.</br>The default value is 0 0 (disabled).";
@ -276,7 +272,7 @@ collections { "The <hilight>collections</hilight> represents a theme.</br>The <h
}
source { "Uses text properties of the given part (e.g. font and size).";
}
style { "Uses the default style and tags defined in the <hilight>style</hilight> block with the specified name.";
style { "Uses the default style and tags defined in the <hilight>style</hilight>block with the specified name.";
}
text { "Sets the default text string.";
}
@ -325,7 +321,7 @@ collections { "The <hilight>collections</hilight> represents a theme.</br>The <h
}
select_mode { "Sets how the text selection is triggered for textblock parts.</br>The available modes are DEFAULT and EXPLICIT.";
}
source { "Sets the given group to the group/textblock parts.</br>Sets the given elementary widget to the external part. (e.g. elm/button)";
source { "Sets the given group to the group/textblock parts.";
}
table { "On a box part, the <hilight>table</hilight> block is used to set other groups as elements of the box.</br>These can be mixed with external objects set by the application through the edje_object_part_box*() functions.";
items { "The <hilight>items</hilight> block contains a list of <hilight>item</hilight> blocks.</br>Each <hilight>item</hilight> item block contains other group as an element of the box.";
@ -363,7 +359,7 @@ collections { "The <hilight>collections</hilight> represents a theme.</br>The <h
}
}
}
type { "Sets the part type.</br>The available types are IMAGE (default), RECT, SWALLOW, TEXT, TEXTBLOCK, SPACER, GROUP, BOX, TABLE, PROXY and EXTERNAL.";
type { "Sets the part type.</br>The available types are IMAGE (default), RECT, SWALLOW, TEXT, TEXTBLOCK, SPACER, GROUP, BOX, TABLE, and PROXY.";
}
}
@ -371,10 +367,6 @@ collections { "The <hilight>collections</hilight> represents a theme.</br>The <h
#inherit "collections.group.parts.part";
}
external { "The <hilight>external</hilight> represents an external part. The <hilight>external</hilight> part is used to set a widget inside of it.</br>The <hilight>external</hilight> block contains a list of descriptions that defines a state of the external part.";
#inherit "collections.group.parts.part";
}
group { "The <hilight>group</hilight> represents a group part. The <hilight>group</hilight> part is used to include other group (widget style) inside of it.</br>The <hilight>group</hilight> block contains a list of descriptions that defines a state of the group part.";
#inherit "collections.group.parts.part";
}
@ -552,4 +544,4 @@ styles { "The <hilight>styles</hilight> block contains a list of one or more <hi
tag { "The <hilight>tag</hilight> defines the meaning of each tag in the style.</br>Style is applied to the text between the beginning tag <tags> and the ending tag </tags>.";
}
}
}
}

View File

@ -1,5 +0,0 @@
install_data(
sources : 'ENVENTOR_EMBEDDED_TAP.wav',
install_dir : join_paths(dir_pkgdata, 'sounds')
)

View File

@ -29,7 +29,7 @@ collections {
}
}
text { "text";
scale;
scale: 1;
effect: SOFT_OUTLINE;
desc { "default";
rel1.relative: 0.0 0.5;
@ -68,4 +68,4 @@ collections {
}
*/
}
}
}

View File

@ -194,7 +194,7 @@ collections {
}
text { "sizer.content";
nomouse;
scale;
scale: 1;
desc { "default";
visible: 0;
text {
@ -228,7 +228,7 @@ collections {
text { "elm.text";
nomouse;
effect: SHADOW BOTTOM;
scale;
scale: 1;
desc { "default";
rel1.offset: 0 5;
rel1.relative: 1.0 0.0;

View File

@ -21,7 +21,7 @@ collections {
group { "my_group";
parts {
text { "text";
scale;
scale: 1;
effect: SOFT_OUTLINE;
desc { "default";
color: 255 255 255 255;
@ -35,4 +35,4 @@ collections {
}
}
}
}
}

View File

@ -14,7 +14,7 @@ collections {
}
parts {
rect { "bg";
scale;
scale: 1;
desc { "default";
color: 233 242 242 255;
align: 0.5 0.5;
@ -26,7 +26,7 @@ collections {
}
}
rect { "point_rect";
scale;
scale: 1;
desc { "default";
color: 0 176 137 255;
align: 0.0 0.0;
@ -39,7 +39,7 @@ collections {
}
}
spacer { "padding_left";
scale;
scale: 1;
desc { "default";
align: 0.0 0.5;
rel1.to: "point_rect";
@ -50,7 +50,7 @@ collections {
}
}
image { "icon_status";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_ICON_ARROW.png";
@ -65,7 +65,7 @@ collections {
}
}
swallow { "icon_user";
scale;
scale: 1;
desc { "default";
align: 0.0 0.5;
rel1.to: "icon_status";
@ -76,7 +76,7 @@ collections {
}
}
text { "user_name";
scale;
scale: 1;
desc { "default";
color: 130 130 130 255;
text {
@ -95,7 +95,7 @@ collections {
}
}
text { "message";
scale;
scale: 1;
desc { "default";
color: 145 145 145 255;
text {
@ -116,7 +116,7 @@ collections {
}
}
spacer { "padding_right";
scale;
scale: 1;
desc { "default";
align: 1.0 0.5;
rel1.to: "bg";
@ -127,7 +127,7 @@ collections {
}
}
text { "date";
scale;
scale: 1;
desc { "default";
color: 135 135 135 255;
text {
@ -148,7 +148,7 @@ collections {
}
}
image { "icon_clip";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_ICON_CLIP.png";
@ -167,7 +167,7 @@ collections {
}
}
image { "icon_badge";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_ICON_BADGE.png";
@ -185,7 +185,7 @@ collections {
}
}
image { "icon_lock";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_ICON_LOCK.png";
@ -204,7 +204,7 @@ collections {
}
}
swallow { "icon_check";
scale;
scale: 1;
desc { "default";
align: 1.0 0.5;
rel1.to: "padding_right";
@ -217,7 +217,7 @@ collections {
}
}
spacer { "padding_icon";
scale;
scale: 1;
desc { "default";
align: 1.0 0.5;
rel1.to: "icon_check";

View File

@ -41,7 +41,7 @@ collections {
}
}
text { "text";
scale;
scale: 1;
effect: SOFT_OUTLINE;
desc { "default";
rel1.relative: 0.0 0.5;
@ -75,4 +75,4 @@ collections {
}
}
}
}
}

View File

@ -8,14 +8,14 @@ collections {
}
parts {
rect { "base";
scale;
scale: 1;
desc { "default";
min: 200 300;
}
}
/* Header */
rect { "header";
scale;
scale: 1;
desc { "default";
color: 200 0 0 255;
align: 0.0 0.0;
@ -28,7 +28,7 @@ collections {
}
}
spacer { "header_padding";
scale;
scale: 1;
desc { "default";
align: 0.0 0.5;
rel1.to: "header";
@ -38,7 +38,7 @@ collections {
}
}
image { "header_button_panel_open";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_ICON_DOCK.png";
@ -56,7 +56,7 @@ collections {
}
}
image { "header_button_panel_close";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_ICON_DOCK_DOWN.png";
@ -75,7 +75,7 @@ collections {
}
}
text { "header_title";
scale;
scale: 1;
desc { "default";
text {
size: 15;
@ -89,7 +89,7 @@ collections {
}
/* Content */
spacer { "content_padding_top";
scale;
scale: 1;
desc { "default";
align: 0.0 0.0;
rel1.to: "header";
@ -100,7 +100,7 @@ collections {
}
}
rect { "content_main";
scale;
scale: 1;
desc { "default";
color: 30 46 93 255;
align: 0.5 0.0;
@ -113,7 +113,7 @@ collections {
}
}
text { "content_main_text";
scale;
scale: 1;
desc { "default";
text {
size: 15;
@ -126,7 +126,7 @@ collections {
}
}
spacer { "content_padding_middle";
scale;
scale: 1;
desc { "default";
align: 0.0 0.0;
rel1.to: "base";
@ -136,7 +136,7 @@ collections {
}
}
rect { "content_sub_1";
scale;
scale: 1;
desc { "default";
color: 0 136 170 255;
align: 0.0 0.0;
@ -148,7 +148,7 @@ collections {
}
}
text { "content_sub_1_text";
scale;
scale: 1;
desc { "default";
text {
size: 15;
@ -161,7 +161,7 @@ collections {
}
}
rect { "content_sub_2";
scale;
scale: 1;
desc { "default";
color: 66 118 189 255;
align: 0.0 0.5;
@ -175,7 +175,7 @@ collections {
}
}
text { "content_sub_2_text";
scale;
scale: 1;
desc { "default";
text {
size: 15;
@ -188,7 +188,7 @@ collections {
}
}
rect { "content_sub_3";
scale;
scale: 1;
desc { "default";
color: 83 66 189 255;
align: 0.0 0.5;
@ -201,7 +201,7 @@ collections {
}
}
text { "content_sub_3_text";
scale;
scale: 1;
desc { "default";
text {
size: 15;
@ -214,7 +214,7 @@ collections {
}
}
rect { "content_bottom";
scale;
scale: 1;
desc { "default";
color: 95 95 95 255;
rel1.to: "content_sub_1";
@ -225,7 +225,7 @@ collections {
}
}
text { "content_bottom_text";
scale;
scale: 1;
desc { "default";
text {
size: 15;
@ -240,7 +240,7 @@ collections {
}
/* Mask */
rect { "mask";
scale;
scale: 1;
desc { "default";
color: 0 0 0 155;
rel1.to: "header";
@ -255,7 +255,7 @@ collections {
}
/* Panel */
rect { "panel_base";
scale;
scale: 1;
desc { "default";
align: 0.0 0.0;
rel1.to: "header";
@ -270,7 +270,7 @@ collections {
}
}
rect { "panel_content_1";
scale;
scale: 1;
desc { "default";
color: 255 94 0 255;
rel1.to: "panel_base";
@ -286,7 +286,7 @@ collections {
}
}
text { "panel_content_1_text";
scale;
scale: 1;
desc { "default";
color: 0 0 0 255;
text {
@ -308,7 +308,7 @@ collections {
}
}
rect { "panel_content_2";
scale;
scale: 1;
desc { "default";
color: 255 130 36 255;
rel1.to: "panel_base";
@ -325,7 +325,7 @@ collections {
}
}
text { "panel_content_2_text";
scale;
scale: 1;
desc { "default";
color: 0 0 0 255;
text {
@ -346,7 +346,7 @@ collections {
}
}
rect { "panel_content_3";
scale;
scale: 1;
desc { "default";
color: 255 166 72 255;
rel1.to: "panel_base";
@ -363,7 +363,7 @@ collections {
}
}
text { "panel_content_3_text";
scale;
scale: 1;
desc { "default";
color: 0 0 0 255;
text {
@ -384,7 +384,7 @@ collections {
}
}
rect { "panel_content_4";
scale;
scale: 1;
desc { "default";
color: 255 202 108 255;
rel1.to: "panel_base";
@ -401,7 +401,7 @@ collections {
}
}
text { "panel_content_4_text";
scale;
scale: 1;
desc { "default";
color: 0 0 0 255;
text {
@ -422,7 +422,7 @@ collections {
}
}
swallow { "panel_swallow";
scale;
scale: 1;
desc { "default";
visible: 0;
rel1.to: "panel_base";

View File

@ -9,7 +9,7 @@ collections {
}
parts {
rect { "button_shadow";
scale;
scale: 1;
desc { "default";
color: 0 0 0 155;
rel1.to: "button_bg";
@ -19,7 +19,7 @@ collections {
}
}
image { "button_bg";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_BUTTON_BG.png";
@ -37,7 +37,7 @@ collections {
}
}
text { "button_text";
scale;
scale: 1;
nomouse;
desc { "default";
color: 70 70 70 255;

View File

@ -3,7 +3,7 @@ collections {
group { "main";
parts {
spacer { "spacer1";
scale;
scale: 1;
desc { "default";
min: 50 50;
fixed: 1 1;
@ -13,7 +13,7 @@ collections {
}
}
spacer { "spacer2";
scale;
scale: 1;
desc { "default";
min: 50 50;
fixed: 1 1;
@ -33,4 +33,4 @@ collections {
}
}
}
}
}

View File

@ -3,7 +3,7 @@ collections {
group { "main";
parts {
text { "text";
scale;
scale: 1;
effect: SOFT_OUTLINE;
desc { "default";
rel1.relative: 0.0 0.0;
@ -20,4 +20,4 @@ collections {
}
}
}
}
}

View File

@ -1,5 +1,3 @@
efl_version: 1 22;
collections {
base_scale: 1.0;
styles {
@ -28,7 +26,7 @@ collections {
group { "main";
parts {
textblock { "text_block";
scale;
scale: 1;
desc { "default";
text {
style: "basic_style";
@ -42,7 +40,7 @@ collections {
}
parts {
textblock { "text_wrap_none";
scale;
scale: 1;
desc { "default";
rel1.to: "text_block";
rel1.relative: 0.0 1.0;
@ -56,7 +54,7 @@ collections {
}
parts {
textblock { "text_wrap_char";
scale;
scale: 1;
desc { "default";
rel1.to: "text_wrap_none";
rel1.relative: 0.0 1.0;
@ -70,7 +68,7 @@ collections {
}
parts {
textblock { "text_wrap_word";
scale;
scale: 1;
desc { "default";
rel1.to: "text_wrap_char";
rel1.relative: 0.0 1.0;
@ -84,7 +82,7 @@ collections {
}
parts {
textblock { "text_wrap_mixed";
scale;
scale: 1;
desc { "default";
rel1.to: "text_wrap_word";
rel1.relative: 0.0 1.0;
@ -98,7 +96,7 @@ collections {
}
parts {
textblock { "text_ellipsis_1";
scale;
scale: 1;
desc { "default";
rel1.to: "text_wrap_mixed";
rel1.relative: 0.0 1.0;
@ -112,7 +110,7 @@ collections {
}
parts {
textblock { "text_ellipsis_0";
scale;
scale: 1;
desc { "default";
rel1.to: "text_ellipsis_1";
rel1.relative: 0.0 1.0;

View File

@ -13,7 +13,7 @@ collections {
}
parts {
image { "bg";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_WATCHFACE.png";
@ -24,7 +24,7 @@ collections {
}
}
image { "moonphase_moon";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_MOONPHASE_MOON.png";
@ -40,7 +40,7 @@ collections {
}
}
image { "moonphase_cover";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_MOONPHASE_COVER.png";
@ -54,7 +54,7 @@ collections {
}
}
image { "month_stroke";
scale;
scale: 1;
desc { "default";
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_MONTH_STROKE.png";
@ -110,7 +110,7 @@ collections {
}
}
text { "date";
scale;
scale: 1;
desc { "default";
color: 0 0 0 255;
fixed: 1 1;
@ -131,7 +131,7 @@ collections {
}
}
image { "hour";
scale;
scale: 1;
nomouse;
desc { "default";
rel1.to: "bg";
@ -151,7 +151,7 @@ collections {
}
}
image { "minute";
scale;
scale: 1;
nomouse;
desc { "default";
rel1.to: "bg";
@ -159,7 +159,7 @@ collections {
rel1.relative: 0.5 0.0;
rel2.relative: 0.5 1.0;
min: 35 0;
fixed: 1 0;
fixed: 1 0;
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_NEEDLE_MINUTE.png";
map.on: 1;
@ -171,7 +171,7 @@ collections {
}
}
image { "second";
scale;
scale: 1;
nomouse;
desc { "default";
rel1.to: "bg";
@ -179,7 +179,7 @@ collections {
rel1.relative: 0.5 0.0;
rel2.relative: 0.5 1.0;
min: 25 0;
fixed: 1 0;
fixed: 1 0;
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_NEEDLE_SECOND.png";
map.on: 1;

View File

@ -10,7 +10,7 @@ collections {
}
parts {
image { "bg";
scale;
scale: 1;
desc { "default";
visible: 1;
/* TODO: Please replace embedded image files to your application image files. */
@ -22,7 +22,7 @@ collections {
}
}
text { "date";
scale;
scale: 1;
desc { "default";
color: 219 219 219 255;
fixed: 1 1;
@ -43,14 +43,14 @@ collections {
}
}
text { "meridiem";
scale;
scale: 1;
desc { "default";
color: 255 120 0 255;
fixed: 1 1;
text {
size: 20;
font: "Mono";
text: "AM";
text: "AM";
}
min: 150 0;
fixed: 1 0;
@ -62,14 +62,14 @@ collections {
}
}
text { "time";
scale;
scale: 1;
desc { "default";
color: 250 250 250 255;
fixed: 1 1;
text {
size: 20;
font: "Mono";
text: "12:00";
text: "12:00";
}
min: 150 0;
fixed: 1 0;
@ -81,7 +81,7 @@ collections {
}
}
image { "hour";
scale;
scale: 1;
nomouse;
desc { "default";
rel1.to: "bg";
@ -101,7 +101,7 @@ collections {
}
}
image { "minute";
scale;
scale: 1;
nomouse;
desc { "default";
rel1.to: "bg";
@ -109,7 +109,7 @@ collections {
rel1.relative: 0.5 0.0;
rel2.relative: 0.5 1.0;
min: 30 0;
fixed: 1 0;
fixed: 1 0;
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_NEEDLE_MINUTE_RECT.png";
map.on: 1;
@ -121,7 +121,7 @@ collections {
}
}
image { "second";
scale;
scale: 1;
nomouse;
desc { "default";
rel1.to: "bg";
@ -129,7 +129,7 @@ collections {
rel1.relative: 0.5 0.0;
rel2.relative: 0.5 1.0;
min: 30 0;
fixed: 1 0;
fixed: 1 0;
/* TODO: Please replace embedded image files to your application image files. */
image.normal: "ENVENTOR_EMBEDDED_NEEDLE_SECOND_RECT.png";
map.on: 1;
@ -140,46 +140,59 @@ collections {
map.rotation.z: 360;
}
}
}
programs {
program { "hour_begin";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "hour";
transition: LINEAR 216000;
after: "hour_reset";
}
program { "hour_reset";
action: STATE_SET "default";
target: "hour";
after: "hour_begin";
}
program { "minute_begin";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "minute";
transition: LINEAR 3600;
after: "minute_begin";
}
program { "minute_reset";
action: STATE_SET "default";
target: "minute";
after: "minute_begin";
}
program { "second_begin";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "second";
transition: LINEAR 60;
after: "second_reset";
}
program { "second_reset";
action: STATE_SET "default";
target: "second";
after: "second_begin";
programs {
program { "load";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "bg";
transition: LINEAR 30;
after: "reset";
}
program { "reset";
action: STATE_SET "default";
target: "bg";
after: "load";
}
program { "hour_begin";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "hour";
transition: LINEAR 216000;
after: "hour_reset";
}
program { "hour_reset";
action: STATE_SET "default";
target: "hour";
after: "hour_begin";
}
program { "minute_begin";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "minute";
transition: LINEAR 3600;
after: "minute_begin";
}
program { "minute_reset";
action: STATE_SET "default";
target: "minute";
after: "minute_begin";
}
program { "second_begin";
signal: "load";
source: "";
action: STATE_SET "rotated";
target: "second";
transition: LINEAR 60;
after: "second_reset";
}
program { "second_reset";
action: STATE_SET "default";
target: "second";
after: "second_begin";
}
}
}
}

View File

@ -1,54 +0,0 @@
edc_template_files = [
'Basic.edc',
'BgAnimation.edc',
'Clip.edc',
'CustomButton.edc',
'Empty.edc',
'GameStage.edc',
'Group.edc',
'Image.edc',
'Interpolation.edc',
'Listitem.edc',
'Map.edc',
'Mask.edc',
'MobileLayout.edc',
'Morphing.edc',
'MouseEvent.edc',
'Proxy.edc',
'Rect.edc',
'Rotation+Zoom.edc',
'Sound.edc',
'Spacer.edc',
'Text.edc',
'Textblock.edc',
'Transition.edc',
'Tween.edc',
'Vector.edc',
'Watchface.edc',
'Watchface2.edc'
]
enventor_templates = []
foreach edc_file : edc_template_files
enventor_templates += custom_target('edje_cc_' + edc_file,
input : edc_file,
depfile : '@BASENAME@.edj.d',
output : '@BASENAME@.edj',
command : edje_cc_exe +
[
'-beta',
'-sd', join_paths(meson.source_root(), 'data/sounds'),
'-id', join_paths(meson.source_root(), 'data/images'),
'@INPUT@', '@OUTPUT@'
],
install : true,
install_dir : join_paths(dir_pkgdata, 'templates'),
)
endforeach
install_data(
sources : edc_template_files,
install_dir : join_paths(dir_pkgdata, 'templates')
)

View File

@ -48,7 +48,6 @@ images {
image: "left.png" COMP;
image: "right.png" COMP;
image: "filetab.png" COMP;
image: "navi_vector.png" COMP;
}
#define ICON_GROUP(_group_name, _image_path) \
@ -110,6 +109,5 @@ ICON_GROUP("wireframes_icon", "icon_wireframes.png")
ICON_GROUP("left_arrow", "left.png")
ICON_GROUP("right_arrow", "right.png")
ICON_GROUP("filetab", "filetab.png")
ICON_GROUP("navi_vector", "navi_vector.png")
#undef ICON_GROUP

View File

@ -100,5 +100,4 @@ EXTRA_DIST = \
bevel_curved_vert_out.png \
vgrad_med_dark.png \
shadow_rounded_vert.png \
wireframes.png \
navi_vector.png
wireframes.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 317 B

File diff suppressed because it is too large Load Diff

View File

@ -1,25 +0,0 @@
edc_theme_files = [
'enventor.edc'
]
enventor_themes = []
_edje_cc = find_program('edje_cc', native: true)
edje_cc_exe = [_edje_cc]
foreach edc_file : edc_theme_files
enventor_themes += custom_target('edje_cc_' + edc_file,
input : edc_file,
depfile : '@BASENAME@.edj.d',
output : '@BASENAME@.edj',
command : edje_cc_exe +
[
'-sd', join_paths(meson.current_source_dir(), 'sounds'),
'-id', join_paths(meson.current_source_dir(), 'images'),
'@INPUT@', '@OUTPUT@'
],
install : true,
install_dir : join_paths(dir_pkgdata, 'themes'),
)
endforeach

View File

@ -160,14 +160,14 @@ group { name: "elm/list/h_item/enventor";
color: 64 64 64 255;
color_class: "list_item_base";
}
description { state: "odd";
description { state: "odd" 0.0;
color: 56 56 56 255;
color_class: "list_item_base_odd";
}
}
program {
signal: "elm,state,odd"; source: "elm";
action: STATE_SET "odd";
action: STATE_SET "odd" 1.0;
target: "base";
}
program {
@ -603,6 +603,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,down,1*"; source: "sb_vbar_a1";
action: STATE_SET "clicked" 0.0;
target: "sb_vbar_a1";
target: "arrow1_vbar";
}
program {
@ -613,11 +614,13 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,up,1"; source: "sb_vbar_a1";
action: STATE_SET "default" 0.0;
target: "sb_vbar_a1";
target: "arrow1_vbar";
}
program {
signal: "mouse,down,1*"; source: "sb_vbar_a2";
action: STATE_SET "clicked" 0.0;
target: "sb_vbar_a2";
target: "arrow2_vbar";
}
program {
@ -628,6 +631,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,up,1"; source: "sb_vbar_a2";
action: STATE_SET "default" 0.0;
target: "sb_vbar_a2";
target: "arrow2_vbar";
}
program {
@ -759,6 +763,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,down,1*"; source: "sb_hbar_a1";
action: STATE_SET "clicked" 0.0;
target: "sb_hbar_a1";
target: "arrow1_hbar";
}
program {
@ -769,11 +774,13 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,up,1"; source: "sb_hbar_a1";
action: STATE_SET "default" 0.0;
target: "sb_hbar_a1";
target: "arrow1_hbar";
}
program {
signal: "mouse,down,1*"; source: "sb_hbar_a2";
action: STATE_SET "clicked" 0.0;
target: "sb_hbar_a2";
target: "arrow2_hbar";
}
program {
@ -784,6 +791,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,up,1"; source: "sb_hbar_a2";
action: STATE_SET "default" 0.0;
target: "sb_hbar_a2";
target: "arrow2_hbar";
}
program {
@ -1138,6 +1146,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,down,1*"; source: "elm.dragable.vbar";
action: STATE_SET "clicked" 0.0;
target: "elm.dragable.vbar";
target: "shadow_vbar";
target: "glow_vbar";
target: "center_glow_vbar";
@ -1145,6 +1154,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,up,1"; source: "elm.dragable.vbar";
action: STATE_SET "default" 0.0;
target: "elm.dragable.vbar";
target: "shadow_vbar";
target: "glow_vbar";
target: "center_glow_vbar";
@ -1152,6 +1162,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,down,1*"; source: "elm.dragable.hbar";
action: STATE_SET "clicked" 0.0;
target: "elm.dragable.hbar";
target: "shadow_hbar";
target: "glow_hbar";
target: "center_glow_hbar";
@ -1159,6 +1170,7 @@ group { name: "elm/scroller/base/enventor";
program {
signal: "mouse,up,1"; source: "elm.dragable.hbar";
action: STATE_SET "default" 0.0;
target: "elm.dragable.hbar";
target: "shadow_hbar";
target: "glow_hbar";
target: "center_glow_hbar";
@ -1694,12 +1706,14 @@ group { name: "elm/button/base/enventor";
program {
signal: "elm,anim,activate"; source: "elm";
action: STATE_SET "clicked" 0.0;
target: "base";
target: "text2";
after: "button_unpressed_anim";
}
program { name: "button_unpressed_anim";
action: STATE_SET "default" 0.0;
in: 0.5 0.0;
target: "base";
target: "text2";
}
program {

56
m4/efl_attribute.m4 Normal file
View File

@ -0,0 +1,56 @@
dnl Copyright (C) 2011 Vincent Torri <vtorri at univ-evry dot fr>
dnl That code is public domain and can be freely used or copied.
dnl Macros for checking if the compiler supports some __attribute__ uses
dnl Usage: EFL_ATTRIBUTE_UNUSED
dnl call AC_DEFINE for __UNUSED__ if __attribute__((unused)) is available
AC_DEFUN([EFL_ATTRIBUTE_UNUSED],
[
AC_MSG_CHECKING([for __attribute__ ((unused))])
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[[
void foo(int x __attribute__ ((unused))) {}
]],
[[
]])],
[have_attribute_unused="yes"],
[have_attribute_unused="no"])
AC_MSG_RESULT([${have_attribute_unused}])
if test "x${have_attribute_unused}" = "xyes" ; then
AC_DEFINE([__UNUSED__], [__attribute__ ((unused))], [Macro declaring a function argument to be unused.])
else
AC_DEFINE([__UNUSED__], [], [__attribute__ ((unused)) is not supported.])
fi
])
dnl Usage: EFL_ATTRIBUTE_VECTOR
dnl call AC_DEFINE for HAVE_GCC_ATTRIBUTE_VECTOR if __attribute__((vector)) is available
AC_DEFUN([EFL_ATTRIBUTE_VECTOR],
[
AC_MSG_CHECKING([for __attribute__ ((vector))])
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[[
typedef int v4si __attribute__ ((vector_size (16)));
]],
[[
if (sizeof(v4si) == 16)
return 0;
else
return -1;
]])],
[have_attribute_vector="yes"],
[have_attribute_vector="no"])
AC_MSG_RESULT([${have_attribute_vector}])
if test "x${have_attribute_vector}" = "xyes" ; then
AC_DEFINE([HAVE_GCC_ATTRIBUTE_VECTOR], [1], [Define to 1 if your compiler supports __attribute__ ((vector)).])
fi
])
dnl End of efl_attribute.m4

View File

@ -1,150 +0,0 @@
project('enventor', 'c',
version : '1.0.99',
meson_version : '>= 0.53',
default_options : [
'warning_level=2',
'buildtype=debugoptimized',
'c_std=c99'
]
)
v_array = meson.project_version().split('.')
v_maj = v_array[0]
v_min = v_array[1]
v_mic = v_array[2]
# install paths
dir_prefix = get_option('prefix')
dir_include = join_paths(dir_prefix, get_option('includedir'))
dir_pkginclude = join_paths(dir_include, meson.project_name())
dir_bin = join_paths(dir_prefix, get_option('bindir'))
dir_lib = join_paths(dir_prefix, get_option('libdir'))
dir_data = join_paths(dir_prefix, get_option('datadir'))
dir_pkgdata = join_paths(dir_data, meson.project_name())
dir_locale = join_paths(dir_prefix, get_option('localedir'))
# binaries
cc = meson.get_compiler('c')
enventor_cflags = []
enventor_cflags_try = [
'-Wshadow',
'-Wstrict-prototypes',
'-Werror=missing-prototypes',
'-Werror=pointer-arith',
'-Wno-missing-field-initializers']
foreach cf: enventor_cflags_try
if cc.has_argument(cf) == true
enventor_cflags += cf
endif
endforeach
add_global_arguments(enventor_cflags, language: 'c')
have_visibility_hidden = cc.has_argument('-fvisibility=hidden')
if have_visibility_hidden
add_global_arguments('-fvisibility=hidden', language: 'c')
endif
pkgconfig = import('pkgconfig')
windows = import('windows')
eet = find_program('eet', native: true)
eet_exe = [ eet ]
edje_cc = find_program('edje_cc', native: true)
edje_cc_exe = [ edje_cc ]
# libraries
config_dir = [include_directories('.')]
efl_req = '>= 1.18.0'
enventor_deps = [
dependency('eina', version : efl_req),
dependency('eo', version : efl_req),
dependency('efl', version : efl_req),
dependency('eet', version : efl_req),
dependency('ecore', version : efl_req),
dependency('ecore-file', version : efl_req),
dependency('evas', version : efl_req),
dependency('eio', version : efl_req),
dependency('efreet', version : efl_req),
dependency('edje', version : efl_req),
dependency('elementary', version : efl_req)
]
requirement_enventor_pc = ' eina ' + efl_req + ' eo ' + efl_req + ' efl ' + efl_req + ' eet ' + efl_req + ' ecore ' + efl_req + ' ecore-file ' + efl_req + ' evas ' + efl_req + ' eio ' + efl_req + ' efreet ' + efl_req + ' edje ' + efl_req + ' elementary ' + efl_req
enventor_cargs = [
'-D_POSIX_C_SOURCE=200809L',
'-D_XOPEN_SOURCE=500' ]
have_nls = false
if get_option('nls') == true
intl_dep = cc.find_library('intl', required: false)
if intl_dep.found() == true and cc.has_header('libintl.h') == true
enventor_deps += cc.find_library('intl', required: true)
enventor_cargs += '-DENABLE_NLS'
have_nls = true
endif
endif
# configuration
config_h = configuration_data()
config_h.set_quoted('PACKAGE_NAME', meson.project_name())
config_h.set_quoted('PACKAGE_VERSION', meson.project_version())
config_h.set_quoted('PACKAGE_BIN_DIR', dir_bin)
config_h.set_quoted('PACKAGE_LIB_DIR', dir_lib)
config_h.set_quoted('PACKAGE_DATA_DIR', dir_pkgdata)
config_h.set_quoted('LOCALE_DIR', dir_locale)
config_h.set('EFL_BETA_API_SUPPORT', '1')
config_h.set('EFL_UI_FOCUS_OBJECT_PROTECTED', '1')
config_h.set('ENVENTOR_BETA_API_SUPPORT', '1')
subdir('src/lib')
subdir('src/bin')
subdir('data/autocomp')
subdir('data/color')
subdir('data/desktop')
subdir('data/help')
subdir('data/icon')
subdir('data/images')
subdir('data/reference')
subdir('data/sounds')
subdir('data/templates')
subdir('data/themes/default')
subdir('pc')
subdir('po')
install_data(
sources : 'README',
install_dir : join_paths(dir_pkgdata, 'docs')
)
# Use config_h after all subdirs have set values
configure_file(output : 'config.h', configuration : config_h)
# output
summary({'OS': host_machine.system(),
'NLS': have_nls ? 'yes' : 'no'
}, section: 'Configuration Options Summary:')
summary({'prefix': dir_prefix,
'bindir': dir_bin,
'libdir': dir_lib,
'incdir': dir_include,
'pkgincdir': dir_pkginclude,
'datadir': dir_data,
'pkgdatadir': dir_pkgdata,
'localedir': dir_locale,
}, section: 'Directories:')
summary({'compilation': 'ninja',
'installation': 'ninja install',
}, section: 'Compilation')

View File

@ -1,6 +0,0 @@
option('nls',
type: 'boolean',
value: true,
description: 'enable localization: (default=true)'
)

View File

@ -1,20 +0,0 @@
pkgconf = configuration_data()
pkgconf.set('prefix', get_option('prefix'))
pkgconf.set('exec_prefix', '${prefix}')
pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
pkgconf.set('pkgincludedir', '${prefix}/@0@'.format(get_option('includedir')) + '/enventor')
pkgconf.set('ENVENTOR_VERSION_MAJOR', v_maj)
pkgconf.set('VERSION', meson.project_version())
pkgconf.set('requirement_enventor', requirement_enventor_pc)
pkg_install_dir = '@0@/pkgconfig'.format(get_option('libdir'))
configure_file(
input : join_paths(meson.source_root(), 'pc/enventor.pc.in'),
output : 'enventor.pc',
configuration : pkgconf,
install_dir : pkg_install_dir
)

View File

@ -1 +1 @@
en fr it ka sl ru
en ru

View File

@ -2,6 +2,7 @@ src/bin/base_gui.c
src/bin/config_data.c
src/bin/console.c
src/bin/file_mgr.c
src/bin/globals.c
src/bin/goto.c
src/bin/live_edit.c
src/bin/main.c

374
po/en.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: enventor 0.6.0\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2016-08-28 01:00+0900\n"
"POT-Creation-Date: 2016-06-05 13:38+0900\n"
"PO-Revision-Date: 2015-11-17 17:37+0000\n"
"Last-Translator: nikawhite belyavskijnb@gmail.com \n"
"Language-Team: \n"
@ -16,481 +16,399 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/bin/base_gui.c:70
#: src/bin/base_gui.c:67
#, c-format
msgid "%s - Enventor"
msgstr ""
#: src/bin/config_data.c:76
#: src/bin/config_data.c:72
msgid "Failed to generate tmp folder!"
msgstr ""
#: src/bin/config_data.c:97
#: src/bin/config_data.c:91 src/bin/config_data.c:104
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr ""
#: src/bin/config_data.c:111
#, c-format
msgid "Cannot create a enventor config folder \"%s\""
msgstr ""
#: src/bin/config_data.c:122
#: src/bin/config_data.c:115
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr ""
#: src/bin/config_data.c:161
#: src/bin/config_data.c:157
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr ""
#: src/bin/config_data.c:169
#: src/bin/config_data.c:165 src/bin/file_mgr.c:193 src/bin/goto.c:136
#: src/bin/menu.c:613 src/bin/newfile.c:144 src/bin/panes.c:321
#: src/bin/search.c:337 src/bin/setting.c:187 src/bin/statusbar.c:312
#: src/bin/text_setting.c:405 src/bin/text_setting.c:456
#: src/bin/text_setting.c:487 src/bin/text_setting.c:956 src/bin/tools.c:186
msgid "Failed to allocate Memory!"
msgstr ""
#: src/bin/file_mgr.c:89
#: src/bin/file_mgr.c:71
msgid "EDC has been changed on the file system."
msgstr ""
#: src/bin/file_mgr.c:91
#: src/bin/file_mgr.c:73
msgid "Do you want to replace the contents?"
msgstr ""
#: src/bin/file_mgr.c:102
#: src/bin/file_mgr.c:84
msgid "Save As"
msgstr ""
#: src/bin/file_mgr.c:110 src/bin/search.c:421
#: src/bin/file_mgr.c:92 src/bin/search.c:407
msgid "Replace"
msgstr ""
#: src/bin/file_mgr.c:116
#: src/bin/file_mgr.c:98
msgid "Ignore"
msgstr ""
#: src/bin/file_mgr.c:197
#: src/bin/file_mgr.c:157
#, c-format
msgid "File saved. \"%s\""
msgstr ""
#: src/bin/file_mgr.c:199
#: src/bin/file_mgr.c:159
#, c-format
msgid "Already saved. \"%s\""
msgstr ""
#: src/bin/goto.c:78
#: src/bin/goto.c:93
msgid "Invalid line number"
msgstr ""
#: src/bin/goto.c:133
#: src/bin/goto.c:142
msgid "Enventor Goto Line"
msgstr ""
#: src/bin/goto.c:137
#: src/bin/goto.c:146
msgid "Go to Line"
msgstr ""
#: src/bin/goto.c:158
#: src/bin/goto.c:168
#, c-format
msgid "Enter line number [1..%d]:"
msgstr ""
#: src/bin/goto.c:182 src/bin/menu.c:154
#: src/bin/goto.c:192 src/bin/menu.c:150
msgid "Ok"
msgstr ""
#: src/bin/goto.c:194 src/bin/search.c:443
#: src/bin/goto.c:204 src/bin/search.c:429
msgid "Failed to grab key - Escape"
msgstr ""
#: src/bin/live_edit.c:2020 src/bin/live_edit.c:2057 src/bin/live_edit.c:2059
#: src/bin/main.c:870 src/lib/auto_comp.c:410 src/lib/ctxpopup.c:779
#: src/bin/live_edit.c:2019 src/bin/live_edit.c:2063 src/bin/live_edit.c:2065
#: src/bin/main.c:850 src/lib/auto_comp.c:369 src/lib/ctxpopup.c:766
#, c-format
msgid "Failed to grab key - %s"
msgstr ""
#: src/bin/live_edit.c:2140
#: src/bin/live_edit.c:2132
msgid ""
"Double click part to confirm.(Esc = cancel, Direction Key = move item per "
"pixel,Ctrl = disable auto-aligning)"
"Double click part to confirm. (Esc = cancel, Direction Key = move item per "
"pixel, Ctrl = disable auto-aligning)"
msgstr ""
#: src/bin/live_edit.c:2160
msgid ""
"Add a Rect part to the live view.<br>A Rect part is used as a solid "
"color<br>component or clipping other components."
msgstr ""
#: src/bin/live_edit.c:2166
msgid ""
"Add a Text part to the live view.<br>A Text part is used for plain text."
msgstr ""
#: src/bin/live_edit.c:2171
msgid ""
"Add an Image part to the live view.<br>An Image part contains a single "
"image<br>resource, usually an image file."
msgstr ""
#: src/bin/live_edit.c:2177
msgid ""
"Add a Swallow part to the live view.<br>A Swallow part is a placeholder "
"for<br>objects that you may want to<br>include in the layout later."
msgstr ""
#: src/bin/live_edit.c:2184
msgid ""
"Add a Textblock part to the live view.<br>A Textblock part is a rich-text "
"part<br>that can show big chunks of text."
msgstr ""
#: src/bin/live_edit.c:2190
msgid ""
"Add a Spacer part to the live view.<br>A Spacer part is an anchor to locate "
"<br>other parts. It is invisible and<br>normally used for padding."
msgstr ""
#: src/bin/live_edit.c:2350
#: src/bin/live_edit.c:2280
msgid "Faild to allocate Memory!"
msgstr ""
#: src/bin/main.c:208
#: src/bin/main.c:24
msgid "Auto Completion Enabled."
msgstr ""
#: src/bin/main.c:25
msgid "Auto Completion Disabled."
msgstr ""
#: src/bin/main.c:34
msgid "Auto Indentation Enabled."
msgstr ""
#: src/bin/main.c:35
msgid "Auto Indentation Disabled."
msgstr ""
#: src/bin/main.c:207
#, c-format
msgid "Font Size: %1.1fx"
msgstr ""
#: src/bin/main.c:942
#, c-format
msgid "Cannot create temporary diretory \"%s\""
#: src/bin/menu.c:137
msgid "New File: Choose a template"
msgstr ""
#: src/bin/menu.c:141
msgid "New File: Choose a Template"
msgstr ""
#: src/bin/menu.c:160 src/bin/menu.c:206 src/bin/setting.c:242
#: src/bin/menu.c:156 src/bin/menu.c:202 src/bin/setting.c:245
msgid "Cancel"
msgstr ""
#: src/bin/menu.c:179
msgid "You have unsaved changes."
#: src/bin/menu.c:175
msgid "Without save, you will lose last changes!"
msgstr ""
#: src/bin/menu.c:181
msgid "Do you want to save the changes?"
#: src/bin/menu.c:177
msgid "Will you save changes?"
msgstr ""
#: src/bin/menu.c:192 src/bin/menu.c:475 src/bin/menu.c:591
#: src/bin/menu.c:188 src/bin/menu.c:466 src/bin/menu.c:582
msgid "Save"
msgstr ""
#: src/bin/menu.c:200
#: src/bin/menu.c:196
msgid "Discard"
msgstr ""
#: src/bin/menu.c:328
#: src/bin/menu.c:324
msgid "Choose a file to save"
msgstr ""
#: src/bin/menu.c:365
#: src/bin/menu.c:351
#, c-format
msgid "Failed to save: %s."
msgstr ""
#: src/bin/menu.c:419
#: src/bin/menu.c:406
msgid "Support only .edc file."
msgstr ""
#: src/bin/menu.c:429
#: src/bin/menu.c:416
msgid "Choose a file to load."
msgstr ""
#: src/bin/menu.c:440
#: src/bin/menu.c:427
#, c-format
msgid "Failed to load: %s."
msgstr ""
#: src/bin/menu.c:467
#: src/bin/menu.c:458
msgid "Save File: Choose a EDC"
msgstr ""
#: src/bin/menu.c:476 src/bin/menu.c:511
#: src/bin/menu.c:467 src/bin/menu.c:502
msgid "Close"
msgstr ""
#: src/bin/menu.c:501
#: src/bin/menu.c:492
msgid "Load File: Choose a EDC"
msgstr ""
#: src/bin/menu.c:510 src/bin/menu.c:595
#: src/bin/menu.c:501 src/bin/menu.c:586
msgid "Load"
msgstr ""
#: src/bin/menu.c:586
#: src/bin/menu.c:577
msgid "New"
msgstr ""
#: src/bin/menu.c:599 src/bin/setting.c:198
#: src/bin/menu.c:590 src/bin/setting.c:201
msgid "Settings"
msgstr ""
#: src/bin/menu.c:603
#: src/bin/menu.c:594
msgid "Help"
msgstr ""
#: src/bin/menu.c:607
#: src/bin/menu.c:598
msgid "Exit"
msgstr ""
#: src/bin/newfile.c:79
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr ""
#: src/bin/newfile.c:124 src/bin/newfile.c:146
#: src/bin/newfile.c:57 src/bin/newfile.c:82
#, c-format
msgid "Cannot find file! \"%s\""
msgstr ""
#: src/bin/search.c:96
#: src/bin/newfile.c:128
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr ""
#: src/bin/search.c:82
#, c-format
msgid "%d matches replaced"
msgstr ""
#: src/bin/search.c:145 src/bin/search.c:205
#: src/bin/search.c:132 src/bin/search.c:194
#, c-format
msgid "No \"%s\" in the text"
msgstr ""
#: src/bin/search.c:242 src/bin/search.c:407
msgid "Previous"
#: src/bin/search.c:233 src/bin/search.c:399
msgid "Backward"
msgstr ""
#: src/bin/search.c:274 src/bin/search.c:414
msgid "Next"
#: src/bin/search.c:265 src/bin/search.c:392
msgid "Forward"
msgstr ""
#: src/bin/search.c:358
#: src/bin/search.c:343
msgid "Enventor Search"
msgstr ""
#: src/bin/search.c:361
#: src/bin/search.c:346
msgid "Find/Replace"
msgstr ""
#: src/bin/search.c:428
#: src/bin/search.c:414
msgid "Replace All"
msgstr ""
#: src/bin/setting.c:210
#: src/bin/setting.c:213
msgid "Preferences"
msgstr ""
#: src/bin/setting.c:212
#: src/bin/setting.c:215
msgid "Text Editor"
msgstr ""
#: src/bin/setting.c:214
#: src/bin/setting.c:217
msgid "EDC Build"
msgstr ""
#: src/bin/setting.c:228
#: src/bin/setting.c:231
msgid "Apply"
msgstr ""
#: src/bin/setting.c:235
#: src/bin/setting.c:238
msgid "Reset"
msgstr ""
#: src/bin/statusbar.c:319
msgid "View zoom level (Ctrl + Mouse Wheel)<br>Zoom the live view in or out."
msgstr ""
#: src/bin/statusbar.c:325
msgid "Resize the width and height of the live view."
msgstr ""
#: src/bin/statusbar.c:330
msgid "Swap the width and height of the live view."
msgstr ""
#: src/bin/statusbar.c:340
msgid ""
"Mouse cursor position in live view.<br>Absolute coordinate | Relative "
"coordinate."
msgstr ""
#: src/bin/statusbar.c:351
msgid "Name of the current editing group."
msgstr ""
#: src/bin/statusbar.c:361
msgid "Cursor line number : Max line number"
msgstr ""
#: src/bin/text_setting.c:552
#: src/bin/text_setting.c:438
#, c-format
msgid "Failed to open file \"%s\""
msgstr ""
#: src/bin/text_setting.c:909
#: src/bin/text_setting.c:759
msgid "Double click a keyword to change its color :"
msgstr ""
#: src/bin/text_setting.c:1004
#: src/bin/text_setting.c:796
msgid "Font Size "
msgstr ""
#: src/bin/text_setting.c:829
msgid "Font Name"
msgstr ""
#: src/bin/text_setting.c:1031
#: src/bin/text_setting.c:856
msgid "Font Style"
msgstr ""
#: src/bin/tools.c:142
#: src/bin/tools.c:134
msgid "Redo text."
msgstr ""
#: src/bin/tools.c:144
#: src/bin/tools.c:136
msgid "No text to be redo."
msgstr ""
#: src/bin/tools.c:152
#: src/bin/tools.c:144
msgid "Undo text."
msgstr ""
#: src/bin/tools.c:154
#: src/bin/tools.c:146
msgid "No text to be undo."
msgstr ""
#: src/bin/tools.c:209
msgid ""
"Part highlighting (Ctrl + H)<br>Show a highlight effect on the selected "
"part<br>in the live view."
#: src/bin/tools.c:201
msgid "Part Highlighting (Ctrl + H)"
msgstr ""
#: src/bin/tools.c:220
msgid ""
"Dummy parts (Ctrl + U)<br>Display virtual images for the swallow "
"and<br>spacer parts."
#: src/bin/tools.c:208
msgid "Dummy Parts (Ctrl + W)"
msgstr ""
#: src/bin/tools.c:231
msgid ""
"Wireframes (Ctrl + W)<br>Display wireframes to identify the "
"parts<br>boundaries."
#: src/bin/tools.c:217
msgid "Mirror Mode (Ctrl + M)"
msgstr ""
#: src/bin/tools.c:242
msgid ""
"Mirror mode (Ctrl + M)<br>Invert the layout horizontally and review<br>the "
"designed layout in RTL(right-to-left)<br>LTR(left-to-right) settings."
#: src/bin/tools.c:251
msgid "Save File (Ctrl + S)"
msgstr ""
#: src/bin/tools.c:280
msgid "Save the file (Ctrl + S)<br>Save the current script to a file."
#: src/bin/tools.c:257
msgid "Undo Text (Ctrl + Z)"
msgstr ""
#: src/bin/tools.c:288
msgid "Undo text (Ctrl + Z)"
#: src/bin/tools.c:263
msgid "Redo Text (Ctrl + R)"
msgstr ""
#: src/bin/tools.c:295
msgid "Redo text (Ctrl + R)"
#: src/bin/tools.c:269
msgid "Find/Replace (Ctrl + F)"
msgstr ""
#: src/bin/tools.c:302
msgid "Find/Replace (Ctrl + F)<br>Find or replace text."
#: src/bin/tools.c:276
msgid "Goto Lines (Ctrl + L)"
msgstr ""
#: src/bin/tools.c:311
msgid ""
"Go to line (Ctrl + L)<br>Open the Go to window to move the cursor<br>line "
"position."
#: src/bin/tools.c:283
msgid "Line Numbers (F5)"
msgstr ""
#: src/bin/tools.c:321
msgid "Line numbers<br>Display the script line numbers."
#: src/bin/tools.c:291
msgid "Insert Template (Ctrl + T)"
msgstr ""
#: src/bin/tools.c:330
msgid ""
"Insert a code snippet (Ctrl + T)<br>Enventor chooses the best code with "
"regards<br>to the current editing context. For instance,<br>if the cursor is "
"inside a part section,<br>description code is generated."
#: src/bin/tools.c:298
msgid "Console Box (Alt + Down)"
msgstr ""
#: src/bin/tools.c:342
msgid ""
"Console box (Alt + Down)<br>Display the console box, which shows the "
"EDC<br>build logs, such as error messages. It pops<br>up automatically when "
"compliation errors occur."
#: src/bin/tools.c:305
msgid "File Browser (F9)"
msgstr ""
#: src/bin/tools.c:353
msgid ""
"File browser (F9)<br>Display the file browser, which shows a file list<br>in "
"current workspace."
#: src/bin/tools.c:312
msgid "EDC Navigator (F10)"
msgstr ""
#: src/bin/tools.c:363
msgid ""
"EDC navigator (F10)<br>Display the EDC navigator, which shows the "
"current<br>group hierarchy tree that contains parts,<br>descriptions and "
"programs lists."
#: src/bin/tools.c:319
msgid "Status (F11)"
msgstr ""
#: src/bin/tools.c:375
msgid ""
"File tab (F11)<br>Display the file tab in the bottom area<br>It shows an "
"opened file list to switch<br>files quickly. to switch files quickly."
#: src/bin/tools.c:326
msgid "Enventor Menu (Esc)"
msgstr ""
#: src/bin/tools.c:386
msgid "Enventor menu (Esc)<br>Open the Enventor main menu."
#: src/bin/tools.c:371
msgid "Part Highlighting Enabled."
msgstr ""
#: src/bin/tools.c:432
msgid "Part highlighting enabled."
#: src/bin/tools.c:373
msgid "Part Highlighting Disabled."
msgstr ""
#: src/bin/tools.c:434
msgid "Part highlighting disabled."
#: src/bin/tools.c:458
msgid "Dummy Parts Enabled."
msgstr ""
#: src/bin/tools.c:519
msgid "Dummy parts enabled."
#: src/bin/tools.c:460
msgid "Dummy Parts Disabled."
msgstr ""
#: src/bin/tools.c:521
msgid "Dummy parts disabled."
#: src/bin/tools.c:483
msgid "Mirror Mode Enabled."
msgstr ""
#: src/bin/tools.c:543
msgid "Wireframes enabled."
#: src/bin/tools.c:485
msgid "Mirror Mode Disabled."
msgstr ""
#: src/bin/tools.c:545
msgid "Wireframes disabled."
msgstr ""
#: src/bin/tools.c:568
msgid "Mirror mode enabled."
msgstr ""
#: src/bin/tools.c:570
msgid "Mirror mode disabled."
msgstr ""
#: src/bin/tools.c:624
#: src/bin/tools.c:539
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr ""
#: src/bin/tools.c:635
#: src/bin/tools.c:548
#, c-format
msgid "Template code inserted, (%s)"
msgstr ""
#: src/bin/tools.c:641
#: src/bin/tools.c:554
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."

View File

@ -1,13 +1,14 @@
# SOME DESCRIPTIVE TITLE.
# This file is put in the public domain.
# Copyright (C) YEAR Enventor development team
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: enventor\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-05 11:59+0100\n"
"Project-Id-Version: enventor 0.9.0\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2016-06-05 13:38+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,481 +17,399 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/bin/base_gui.c:70
#: src/bin/base_gui.c:67
#, c-format
msgid "%s - Enventor"
msgstr ""
#: src/bin/config_data.c:78
#: src/bin/config_data.c:72
msgid "Failed to generate tmp folder!"
msgstr ""
#: src/bin/config_data.c:99
#: src/bin/config_data.c:91 src/bin/config_data.c:104
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr ""
#: src/bin/config_data.c:113
#, c-format
msgid "Cannot create a enventor config folder \"%s\""
msgstr ""
#: src/bin/config_data.c:124
#: src/bin/config_data.c:115
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr ""
#: src/bin/config_data.c:163
#: src/bin/config_data.c:157
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr ""
#: src/bin/config_data.c:171
#: src/bin/config_data.c:165 src/bin/file_mgr.c:193 src/bin/goto.c:136
#: src/bin/menu.c:613 src/bin/newfile.c:144 src/bin/panes.c:321
#: src/bin/search.c:337 src/bin/setting.c:187 src/bin/statusbar.c:312
#: src/bin/text_setting.c:405 src/bin/text_setting.c:456
#: src/bin/text_setting.c:487 src/bin/text_setting.c:956 src/bin/tools.c:186
msgid "Failed to allocate Memory!"
msgstr ""
#: src/bin/file_mgr.c:89
#: src/bin/file_mgr.c:71
msgid "EDC has been changed on the file system."
msgstr ""
#: src/bin/file_mgr.c:91
#: src/bin/file_mgr.c:73
msgid "Do you want to replace the contents?"
msgstr ""
#: src/bin/file_mgr.c:102
#: src/bin/file_mgr.c:84
msgid "Save As"
msgstr ""
#: src/bin/file_mgr.c:110 src/bin/search.c:427
#: src/bin/file_mgr.c:92 src/bin/search.c:407
msgid "Replace"
msgstr ""
#: src/bin/file_mgr.c:116
#: src/bin/file_mgr.c:98
msgid "Ignore"
msgstr ""
#: src/bin/file_mgr.c:197
#: src/bin/file_mgr.c:157
#, c-format
msgid "File saved. \"%s\""
msgstr ""
#: src/bin/file_mgr.c:199
#: src/bin/file_mgr.c:159
#, c-format
msgid "Already saved. \"%s\""
msgstr ""
#: src/bin/goto.c:78
#: src/bin/goto.c:93
msgid "Invalid line number"
msgstr ""
#: src/bin/goto.c:133
#: src/bin/goto.c:142
msgid "Enventor Goto Line"
msgstr ""
#: src/bin/goto.c:137
#: src/bin/goto.c:146
msgid "Go to Line"
msgstr ""
#: src/bin/goto.c:158
#: src/bin/goto.c:168
#, c-format
msgid "Enter line number [1..%d]:"
msgstr ""
#: src/bin/goto.c:182 src/bin/menu.c:154
#: src/bin/goto.c:192 src/bin/menu.c:150
msgid "Ok"
msgstr ""
#: src/bin/goto.c:194 src/bin/search.c:449
#: src/bin/goto.c:204 src/bin/search.c:429
msgid "Failed to grab key - Escape"
msgstr ""
#: src/bin/live_edit.c:2020 src/bin/live_edit.c:2057 src/bin/live_edit.c:2059
#: src/bin/main.c:872 src/lib/auto_comp.c:410 src/lib/ctxpopup.c:813
#: src/bin/live_edit.c:2019 src/bin/live_edit.c:2063 src/bin/live_edit.c:2065
#: src/bin/main.c:850 src/lib/auto_comp.c:369 src/lib/ctxpopup.c:766
#, c-format
msgid "Failed to grab key - %s"
msgstr ""
#: src/bin/live_edit.c:2140
#: src/bin/live_edit.c:2132
msgid ""
"Double click part to confirm.(Esc = cancel, Direction Key = move item per "
"pixel,Ctrl = disable auto-aligning)"
"Double click part to confirm. (Esc = cancel, Direction Key = move item per "
"pixel, Ctrl = disable auto-aligning)"
msgstr ""
#: src/bin/live_edit.c:2160
msgid ""
"Add a Rect part to the live view.<br>A Rect part is used as a solid "
"color<br>component or clipping other components."
msgstr ""
#: src/bin/live_edit.c:2166
msgid ""
"Add a Text part to the live view.<br>A Text part is used for plain text."
msgstr ""
#: src/bin/live_edit.c:2171
msgid ""
"Add an Image part to the live view.<br>An Image part contains a single "
"image<br>resource, usually an image file."
msgstr ""
#: src/bin/live_edit.c:2177
msgid ""
"Add a Swallow part to the live view.<br>A Swallow part is a placeholder "
"for<br>objects that you may want to<br>include in the layout later."
msgstr ""
#: src/bin/live_edit.c:2184
msgid ""
"Add a Textblock part to the live view.<br>A Textblock part is a rich-text "
"part<br>that can show big chunks of text."
msgstr ""
#: src/bin/live_edit.c:2190
msgid ""
"Add a Spacer part to the live view.<br>A Spacer part is an anchor to locate "
"<br>other parts. It is invisible and<br>normally used for padding."
msgstr ""
#: src/bin/live_edit.c:2350
#: src/bin/live_edit.c:2280
msgid "Faild to allocate Memory!"
msgstr ""
#: src/bin/main.c:212
#: src/bin/main.c:24
msgid "Auto Completion Enabled."
msgstr ""
#: src/bin/main.c:25
msgid "Auto Completion Disabled."
msgstr ""
#: src/bin/main.c:34
msgid "Auto Indentation Enabled."
msgstr ""
#: src/bin/main.c:35
msgid "Auto Indentation Disabled."
msgstr ""
#: src/bin/main.c:207
#, c-format
msgid "Font Size: %1.1fx"
msgstr ""
#: src/bin/main.c:944
#, c-format
msgid "Cannot create temporary diretory \"%s\""
#: src/bin/menu.c:137
msgid "New File: Choose a template"
msgstr ""
#: src/bin/menu.c:141
msgid "New File: Choose a Template"
msgstr ""
#: src/bin/menu.c:160 src/bin/menu.c:206 src/bin/setting.c:242
#: src/bin/menu.c:156 src/bin/menu.c:202 src/bin/setting.c:245
msgid "Cancel"
msgstr ""
#: src/bin/menu.c:179
msgid "You have unsaved changes."
#: src/bin/menu.c:175
msgid "Without save, you will lose last changes!"
msgstr ""
#: src/bin/menu.c:181
msgid "Do you want to save the changes?"
#: src/bin/menu.c:177
msgid "Will you save changes?"
msgstr ""
#: src/bin/menu.c:192 src/bin/menu.c:475 src/bin/menu.c:591
#: src/bin/menu.c:188 src/bin/menu.c:466 src/bin/menu.c:582
msgid "Save"
msgstr ""
#: src/bin/menu.c:200
#: src/bin/menu.c:196
msgid "Discard"
msgstr ""
#: src/bin/menu.c:328
#: src/bin/menu.c:324
msgid "Choose a file to save"
msgstr ""
#: src/bin/menu.c:365
#: src/bin/menu.c:351
#, c-format
msgid "Failed to save: %s."
msgstr ""
#: src/bin/menu.c:419
#: src/bin/menu.c:406
msgid "Support only .edc file."
msgstr ""
#: src/bin/menu.c:429
#: src/bin/menu.c:416
msgid "Choose a file to load."
msgstr ""
#: src/bin/menu.c:440
#: src/bin/menu.c:427
#, c-format
msgid "Failed to load: %s."
msgstr ""
#: src/bin/menu.c:467
#: src/bin/menu.c:458
msgid "Save File: Choose a EDC"
msgstr ""
#: src/bin/menu.c:476 src/bin/menu.c:511
#: src/bin/menu.c:467 src/bin/menu.c:502
msgid "Close"
msgstr ""
#: src/bin/menu.c:501
#: src/bin/menu.c:492
msgid "Load File: Choose a EDC"
msgstr ""
#: src/bin/menu.c:510 src/bin/menu.c:595
#: src/bin/menu.c:501 src/bin/menu.c:586
msgid "Load"
msgstr ""
#: src/bin/menu.c:586
#: src/bin/menu.c:577
msgid "New"
msgstr ""
#: src/bin/menu.c:599 src/bin/setting.c:198
#: src/bin/menu.c:590 src/bin/setting.c:201
msgid "Settings"
msgstr ""
#: src/bin/menu.c:603
#: src/bin/menu.c:594
msgid "Help"
msgstr ""
#: src/bin/menu.c:607
#: src/bin/menu.c:598
msgid "Exit"
msgstr ""
#: src/bin/newfile.c:79
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr ""
#: src/bin/newfile.c:124 src/bin/newfile.c:146
#: src/bin/newfile.c:57 src/bin/newfile.c:82
#, c-format
msgid "Cannot find file! \"%s\""
msgstr ""
#: src/bin/search.c:96
#: src/bin/newfile.c:128
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr ""
#: src/bin/search.c:82
#, c-format
msgid "%d matches replaced"
msgstr ""
#: src/bin/search.c:150 src/bin/search.c:210
#: src/bin/search.c:132 src/bin/search.c:194
#, c-format
msgid "No \"%s\" in the text"
msgstr ""
#: src/bin/search.c:248 src/bin/search.c:413
msgid "Previous"
#: src/bin/search.c:233 src/bin/search.c:399
msgid "Backward"
msgstr ""
#: src/bin/search.c:280 src/bin/search.c:420
msgid "Next"
#: src/bin/search.c:265 src/bin/search.c:392
msgid "Forward"
msgstr ""
#: src/bin/search.c:364
#: src/bin/search.c:343
msgid "Enventor Search"
msgstr ""
#: src/bin/search.c:367
#: src/bin/search.c:346
msgid "Find/Replace"
msgstr ""
#: src/bin/search.c:434
#: src/bin/search.c:414
msgid "Replace All"
msgstr ""
#: src/bin/setting.c:210
#: src/bin/setting.c:213
msgid "Preferences"
msgstr ""
#: src/bin/setting.c:212
#: src/bin/setting.c:215
msgid "Text Editor"
msgstr ""
#: src/bin/setting.c:214
#: src/bin/setting.c:217
msgid "EDC Build"
msgstr ""
#: src/bin/setting.c:228
#: src/bin/setting.c:231
msgid "Apply"
msgstr ""
#: src/bin/setting.c:235
#: src/bin/setting.c:238
msgid "Reset"
msgstr ""
#: src/bin/statusbar.c:319
msgid "View zoom level (Ctrl + Mouse Wheel)<br>Zoom the live view in or out."
msgstr ""
#: src/bin/statusbar.c:325
msgid "Resize the width and height of the live view."
msgstr ""
#: src/bin/statusbar.c:330
msgid "Swap the width and height of the live view."
msgstr ""
#: src/bin/statusbar.c:340
msgid ""
"Mouse cursor position in live view.<br>Absolute coordinate | Relative "
"coordinate."
msgstr ""
#: src/bin/statusbar.c:351
msgid "Name of the current editing group."
msgstr ""
#: src/bin/statusbar.c:361
msgid "Cursor line number : Max line number"
msgstr ""
#: src/bin/text_setting.c:552
#: src/bin/text_setting.c:438
#, c-format
msgid "Failed to open file \"%s\""
msgstr ""
#: src/bin/text_setting.c:915
#: src/bin/text_setting.c:759
msgid "Double click a keyword to change its color :"
msgstr ""
#: src/bin/text_setting.c:1010
#: src/bin/text_setting.c:796
msgid "Font Size "
msgstr ""
#: src/bin/text_setting.c:829
msgid "Font Name"
msgstr ""
#: src/bin/text_setting.c:1037
#: src/bin/text_setting.c:856
msgid "Font Style"
msgstr ""
#: src/bin/tools.c:142
#: src/bin/tools.c:134
msgid "Redo text."
msgstr ""
#: src/bin/tools.c:144
#: src/bin/tools.c:136
msgid "No text to be redo."
msgstr ""
#: src/bin/tools.c:152
#: src/bin/tools.c:144
msgid "Undo text."
msgstr ""
#: src/bin/tools.c:154
#: src/bin/tools.c:146
msgid "No text to be undo."
msgstr ""
#: src/bin/tools.c:244
msgid ""
"Part highlighting (Ctrl + H)<br>Show a highlight effect on the selected "
"part<br>in the live view."
#: src/bin/tools.c:201
msgid "Part Highlighting (Ctrl + H)"
msgstr ""
#: src/bin/tools.c:256
msgid ""
"Dummy parts (Ctrl + U)<br>Display virtual images for the swallow "
"and<br>spacer parts."
#: src/bin/tools.c:208
msgid "Dummy Parts (Ctrl + W)"
msgstr ""
#: src/bin/tools.c:268
msgid ""
"Wireframes (Ctrl + W)<br>Display wireframes to identify the "
"parts<br>boundaries."
#: src/bin/tools.c:217
msgid "Mirror Mode (Ctrl + M)"
msgstr ""
#: src/bin/tools.c:280
msgid ""
"Mirror mode (Ctrl + M)<br>Invert the layout horizontally and review<br>the "
"designed layout in RTL(right-to-left)<br>LTR(left-to-right) settings."
#: src/bin/tools.c:251
msgid "Save File (Ctrl + S)"
msgstr ""
#: src/bin/tools.c:348
msgid "Save the file (Ctrl + S)<br>Save the current script to a file."
#: src/bin/tools.c:257
msgid "Undo Text (Ctrl + Z)"
msgstr ""
#: src/bin/tools.c:357
msgid "Undo text (Ctrl + Z)"
#: src/bin/tools.c:263
msgid "Redo Text (Ctrl + R)"
msgstr ""
#: src/bin/tools.c:365
msgid "Redo text (Ctrl + R)"
#: src/bin/tools.c:269
msgid "Find/Replace (Ctrl + F)"
msgstr ""
#: src/bin/tools.c:276
msgid "Goto Lines (Ctrl + L)"
msgstr ""
#: src/bin/tools.c:283
msgid "Line Numbers (F5)"
msgstr ""
#: src/bin/tools.c:291
msgid "Insert Template (Ctrl + T)"
msgstr ""
#: src/bin/tools.c:298
msgid "Console Box (Alt + Down)"
msgstr ""
#: src/bin/tools.c:305
msgid "File Browser (F9)"
msgstr ""
#: src/bin/tools.c:312
msgid "EDC Navigator (F10)"
msgstr ""
#: src/bin/tools.c:319
msgid "Status (F11)"
msgstr ""
#: src/bin/tools.c:326
msgid "Enventor Menu (Esc)"
msgstr ""
#: src/bin/tools.c:371
msgid "Part Highlighting Enabled."
msgstr ""
#: src/bin/tools.c:373
msgid "Find/Replace (Ctrl + F)<br>Find or replace text."
msgid "Part Highlighting Disabled."
msgstr ""
#: src/bin/tools.c:383
msgid ""
"Go to line (Ctrl + L)<br>Open the Go to window to move the cursor<br>line "
"position."
#: src/bin/tools.c:458
msgid "Dummy Parts Enabled."
msgstr ""
#: src/bin/tools.c:394
msgid "Line numbers<br>Display the script line numbers."
#: src/bin/tools.c:460
msgid "Dummy Parts Disabled."
msgstr ""
#: src/bin/tools.c:404
msgid ""
"Insert a code snippet (Ctrl + T)<br>Enventor chooses the best code with "
"regards<br>to the current editing context. For instance,<br>if the cursor is "
"inside a part section,<br>description code is generated."
#: src/bin/tools.c:483
msgid "Mirror Mode Enabled."
msgstr ""
#: src/bin/tools.c:418
msgid ""
"Console box (Alt + Down)<br>Display the console box, which shows the "
"EDC<br>build logs, such as error messages. It pops<br>up automatically when "
"compilation errors occur."
#: src/bin/tools.c:485
msgid "Mirror Mode Disabled."
msgstr ""
#: src/bin/tools.c:430
msgid ""
"File browser (F9)<br>Display the file browser, which shows a file list<br>in "
"current workspace."
msgstr ""
#: src/bin/tools.c:441
msgid ""
"EDC navigator (F10)<br>Display the EDC navigator, which shows the "
"current<br>group hierarchy tree that contains parts,<br>descriptions and "
"programs lists."
msgstr ""
#: src/bin/tools.c:453
msgid ""
"File tab (F11)<br>Display the file tab in the bottom area<br>It shows an "
"opened file list to switch<br>files quickly."
msgstr ""
#: src/bin/tools.c:467
msgid "Enventor menu (Esc)<br>Open the Enventor main menu."
msgstr ""
#: src/bin/tools.c:514
msgid "Part highlighting enabled."
msgstr ""
#: src/bin/tools.c:516
msgid "Part highlighting disabled."
msgstr ""
#: src/bin/tools.c:601
msgid "Dummy parts enabled."
msgstr ""
#: src/bin/tools.c:603
msgid "Dummy parts disabled."
msgstr ""
#: src/bin/tools.c:625
msgid "Wireframes enabled."
msgstr ""
#: src/bin/tools.c:627
msgid "Wireframes disabled."
msgstr ""
#: src/bin/tools.c:650
msgid "Mirror mode enabled."
msgstr ""
#: src/bin/tools.c:652
msgid "Mirror mode disabled."
msgstr ""
#: src/bin/tools.c:706
#: src/bin/tools.c:539
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr ""
#: src/bin/tools.c:717
#: src/bin/tools.c:548
#, c-format
msgid "Template code inserted, (%s)"
msgstr ""
#: src/bin/tools.c:723
#: src/bin/tools.c:554
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."

545
po/fr.po
View File

@ -1,545 +0,0 @@
# French translation for Enventor.
# This file is distributed under the same license as the enventor package.
# similar <similar@orange.fr>, 2020, 2021.
#
msgid ""
msgstr ""
"Project-Id-Version: enventor\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2021-12-05 11:59+0100\n"
"PO-Revision-Date: 2021-12-05 13:42+0100\n"
"Last-Translator: Philippe Jean Guillaumie <similar@orange.fr>\n"
"Language-Team: French\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 3.0\n"
#: src/bin/base_gui.c:70
#, c-format
msgid "%s - Enventor"
msgstr "%s - Enventor"
#: src/bin/config_data.c:78
msgid "Failed to generate tmp folder!"
msgstr "Impossible de générer un dossier temporaire !"
#: src/bin/config_data.c:99
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr "Impossible de créer le dossier de configuration « %s »"
#: src/bin/config_data.c:113
#, c-format
msgid "Cannot create a enventor config folder \"%s\""
msgstr "Impossible de créer le dossier de configuration Enventor « %s »"
#: src/bin/config_data.c:124
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr "Échec de l'enregistrement du fichier de configuration « %s »"
#: src/bin/config_data.c:163
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr "Échec du chargement du fichier de configuration « %s »"
#: src/bin/config_data.c:171
msgid "Failed to allocate Memory!"
msgstr "Impossible d'allouer de la mémoire !"
#: src/bin/file_mgr.c:89
msgid "EDC has been changed on the file system."
msgstr "EDC a été modifié sur le système de fichiers."
#: src/bin/file_mgr.c:91
msgid "Do you want to replace the contents?"
msgstr "Voulez-vous remplacer le contenu ?"
#: src/bin/file_mgr.c:102
msgid "Save As"
msgstr "Enregistrer sous"
#: src/bin/file_mgr.c:110 src/bin/search.c:427
msgid "Replace"
msgstr "Remplacer"
#: src/bin/file_mgr.c:116
msgid "Ignore"
msgstr "Ignorer"
#: src/bin/file_mgr.c:197
#, c-format
msgid "File saved. \"%s\""
msgstr "Fichier « %s » enregistré."
#: src/bin/file_mgr.c:199
#, c-format
msgid "Already saved. \"%s\""
msgstr "Fichier « %s » déjà enregistré."
#: src/bin/goto.c:78
msgid "Invalid line number"
msgstr "Numéro de ligne non valide"
#: src/bin/goto.c:133
msgid "Enventor Goto Line"
msgstr "Enventor Se rendre à une ligne"
#: src/bin/goto.c:137
msgid "Go to Line"
msgstr "Aller à la ligne"
#: src/bin/goto.c:158
#, c-format
msgid "Enter line number [1..%d]:"
msgstr "Entrer le numéro de ligne [1..%d] :"
#: src/bin/goto.c:182 src/bin/menu.c:154
msgid "Ok"
msgstr "OK"
#: src/bin/goto.c:194 src/bin/search.c:449
msgid "Failed to grab key - Escape"
msgstr "Impossible d'accaparer la touche - Échap"
#: src/bin/live_edit.c:2020 src/bin/live_edit.c:2057 src/bin/live_edit.c:2059
#: src/bin/main.c:872 src/lib/auto_comp.c:410 src/lib/ctxpopup.c:813
#, c-format
msgid "Failed to grab key - %s"
msgstr "Impossible d'accaparer la touche - %s"
#: src/bin/live_edit.c:2140
msgid ""
"Double click part to confirm.(Esc = cancel, Direction Key = move item per "
"pixel,Ctrl = disable auto-aligning)"
msgstr ""
"Double clic sur la partie pour confirmer. (Échap = annuler, touches de "
"direction = déplacer d'un pixel à la fois, Ctrl = désactiver l'auto-"
"alignement)"
#: src/bin/live_edit.c:2160
msgid ""
"Add a Rect part to the live view.<br>A Rect part is used as a solid "
"color<br>component or clipping other components."
msgstr ""
"Ajouter une partie Rect à l'aperçu.<br>Cette partie est utilisée comme un "
"élément de couleur<br>unie ou pour cacher d'autres éléments."
#: src/bin/live_edit.c:2166
msgid ""
"Add a Text part to the live view.<br>A Text part is used for plain text."
msgstr ""
"Ajouter une partie Text à l'aperçu.<br>Cette partie est utilisée pour le "
"texte ordinaire."
#: src/bin/live_edit.c:2171
msgid ""
"Add an Image part to the live view.<br>An Image part contains a single "
"image<br>resource, usually an image file."
msgstr ""
"Ajouter une partie Image à l'aperçu.<br>Cette partie contient une seule "
"ressource,<br>généralement un fichier image."
#: src/bin/live_edit.c:2177
msgid ""
"Add a Swallow part to the live view.<br>A Swallow part is a placeholder "
"for<br>objects that you may want to<br>include in the layout later."
msgstr ""
"Ajouter une partie Swallow à l'aperçu.<br>Cette partie est un espace réservé "
"pour<br>des objets que vous souhaitez inclure <br>plus tard dans votre "
"composition."
#: src/bin/live_edit.c:2184
msgid ""
"Add a Textblock part to the live view.<br>A Textblock part is a rich-text "
"part<br>that can show big chunks of text."
msgstr ""
"Ajouter une partie Textblock à l'aperçu.<br>Cette partie affiche du texte "
"formaté pouvant<br>contenir de gros blocs de texte."
#: src/bin/live_edit.c:2190
msgid ""
"Add a Spacer part to the live view.<br>A Spacer part is an anchor to locate "
"<br>other parts. It is invisible and<br>normally used for padding."
msgstr ""
"Ajouter une partie Spacer à l'aperçu.<br>Cette partie est un ancrage pour "
"accueillir<br>d'autres éléments. Elle est invisible et<br>sert "
"principalement pour le padding."
#: src/bin/live_edit.c:2350
msgid "Faild to allocate Memory!"
msgstr "Impossible d'allouer de la mémoire !"
#: src/bin/main.c:212
#, c-format
msgid "Font Size: %1.1fx"
msgstr "Taille de la police : %1.1fx"
#: src/bin/main.c:944
#, c-format
msgid "Cannot create temporary diretory \"%s\""
msgstr "Impossible de créer le dossier temporaire « %s »"
#: src/bin/menu.c:141
msgid "New File: Choose a Template"
msgstr "Nouveau fichier : choisir un modèle"
#: src/bin/menu.c:160 src/bin/menu.c:206 src/bin/setting.c:242
msgid "Cancel"
msgstr "Annuler"
#: src/bin/menu.c:179
msgid "You have unsaved changes."
msgstr "Des changements n'ont pas été enregistrés."
#: src/bin/menu.c:181
msgid "Do you want to save the changes?"
msgstr "Voulez-vous enregistrer les modifications ?"
#: src/bin/menu.c:192 src/bin/menu.c:475 src/bin/menu.c:591
msgid "Save"
msgstr "Enregistrer"
#: src/bin/menu.c:200
msgid "Discard"
msgstr "Abandonner"
#: src/bin/menu.c:328
msgid "Choose a file to save"
msgstr "Choisir un fichier à enregistrer"
#: src/bin/menu.c:365
#, c-format
msgid "Failed to save: %s."
msgstr "Impossible d'enregistrer : %s."
#: src/bin/menu.c:419
msgid "Support only .edc file."
msgstr "Seuls les fichiers .edc sont pris en charge."
#: src/bin/menu.c:429
msgid "Choose a file to load."
msgstr "Choisir un fichier à charger."
#: src/bin/menu.c:440
#, c-format
msgid "Failed to load: %s."
msgstr "Impossible de charger : %s."
#: src/bin/menu.c:467
msgid "Save File: Choose a EDC"
msgstr "Enregistrer un fichier : choisir un EDC"
#: src/bin/menu.c:476 src/bin/menu.c:511
msgid "Close"
msgstr "Fermer"
#: src/bin/menu.c:501
msgid "Load File: Choose a EDC"
msgstr "Charger un fichier : choisir un EDC"
#: src/bin/menu.c:510 src/bin/menu.c:595
msgid "Load"
msgstr "Charger"
#: src/bin/menu.c:586
msgid "New"
msgstr "Nouveau"
#: src/bin/menu.c:599 src/bin/setting.c:198
msgid "Settings"
msgstr "Configuration"
#: src/bin/menu.c:603
msgid "Help"
msgstr "Aide"
#: src/bin/menu.c:607
msgid "Exit"
msgstr "Quitter"
#: src/bin/newfile.c:79
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr "Dossier des modèles « %s » introuvable !"
#: src/bin/newfile.c:124 src/bin/newfile.c:146
#, c-format
msgid "Cannot find file! \"%s\""
msgstr "Fichier « %s » introuvable !"
#: src/bin/search.c:96
#, c-format
msgid "%d matches replaced"
msgstr "%d correspondances remplacées"
#: src/bin/search.c:150 src/bin/search.c:210
#, c-format
msgid "No \"%s\" in the text"
msgstr "Aucun « %s » dans le texte"
#: src/bin/search.c:248 src/bin/search.c:413
msgid "Previous"
msgstr "Précédent"
#: src/bin/search.c:280 src/bin/search.c:420
msgid "Next"
msgstr "Suivant"
#: src/bin/search.c:364
msgid "Enventor Search"
msgstr "Enventor Rechercher"
#: src/bin/search.c:367
msgid "Find/Replace"
msgstr "Rechercher / Remplacer"
#: src/bin/search.c:434
msgid "Replace All"
msgstr "Remplacer tout"
#: src/bin/setting.c:210
msgid "Preferences"
msgstr "Préférences"
#: src/bin/setting.c:212
msgid "Text Editor"
msgstr "Éditeur de texte"
#: src/bin/setting.c:214
msgid "EDC Build"
msgstr "Construire EDC"
#: src/bin/setting.c:228
msgid "Apply"
msgstr "Appliquer"
#: src/bin/setting.c:235
msgid "Reset"
msgstr "Rétablir"
#: src/bin/statusbar.c:319
msgid "View zoom level (Ctrl + Mouse Wheel)<br>Zoom the live view in or out."
msgstr "Niveau de zoom (Ctrl+molette souris)<br>Agrandir ou réduire l'aperçu."
#: src/bin/statusbar.c:325
msgid "Resize the width and height of the live view."
msgstr "Redimensionner la largeur et la hauteur de l'aperçu."
#: src/bin/statusbar.c:330
msgid "Swap the width and height of the live view."
msgstr "Interchanger la largeur et la hauteur de l'aperçu."
#: src/bin/statusbar.c:340
msgid ""
"Mouse cursor position in live view.<br>Absolute coordinate | Relative "
"coordinate."
msgstr ""
"Position du pointeur de la souris dans l'aperçu.<br>Coordonnée absolue | "
"Coordonnée relative."
#: src/bin/statusbar.c:351
msgid "Name of the current editing group."
msgstr "Nom du groupe en cours d'édition."
#: src/bin/statusbar.c:361
msgid "Cursor line number : Max line number"
msgstr "Numéro de ligne du curseur : nombre de lignes max."
#: src/bin/text_setting.c:552
#, c-format
msgid "Failed to open file \"%s\""
msgstr "Impossible d'ouvrir le fichier « %s »"
#: src/bin/text_setting.c:915
msgid "Double click a keyword to change its color :"
msgstr "Double clic sur un mot-clé pour changer sa couleur :"
#: src/bin/text_setting.c:1010
msgid "Font Name"
msgstr "Nom de la police"
#: src/bin/text_setting.c:1037
msgid "Font Style"
msgstr "Style de la police"
#: src/bin/tools.c:142
msgid "Redo text."
msgstr "Répéter le texte."
#: src/bin/tools.c:144
msgid "No text to be redo."
msgstr "Aucun texte à répéter."
#: src/bin/tools.c:152
msgid "Undo text."
msgstr "Annuler le texte."
#: src/bin/tools.c:154
msgid "No text to be undo."
msgstr "Aucun texte à annuler."
#: src/bin/tools.c:244
msgid ""
"Part highlighting (Ctrl + H)<br>Show a highlight effect on the selected "
"part<br>in the live view."
msgstr ""
"Surbrillance (Ctrl+H)<br>Mise en évidence de la partie<br>sélectionnée dans "
"l'aperçu."
#: src/bin/tools.c:256
msgid ""
"Dummy parts (Ctrl + U)<br>Display virtual images for the swallow "
"and<br>spacer parts."
msgstr ""
"Maquette (Ctrl+U)<br>Affiche des images factices pour les<br>parties Swallow "
"et Spacer."
#: src/bin/tools.c:268
msgid ""
"Wireframes (Ctrl + W)<br>Display wireframes to identify the "
"parts<br>boundaries."
msgstr ""
"Encadrement (Ctrl+W)<br>Affiche des guides pour délimiter<br>les différentes "
"parties."
#: src/bin/tools.c:280
msgid ""
"Mirror mode (Ctrl + M)<br>Invert the layout horizontally and review<br>the "
"designed layout in RTL(right-to-left)<br>LTR(left-to-right) settings."
msgstr ""
"Miroir (Ctrl+M)<br>Inverse horizontalement la composition et permet "
"de<br>tester les dispositions RTL (de droite à gauche)<br>et LTR (de gauche "
"à droite)."
#: src/bin/tools.c:348
msgid "Save the file (Ctrl + S)<br>Save the current script to a file."
msgstr ""
"Enregistrer le fichier (Ctrl+S)<br>Enregistre le script actuel dans un "
"fichier."
#: src/bin/tools.c:357
msgid "Undo text (Ctrl + Z)"
msgstr "Annuler texte (Ctrl+Z)"
#: src/bin/tools.c:365
msgid "Redo text (Ctrl + R)"
msgstr "Répéter texte (Ctrl+R)"
#: src/bin/tools.c:373
msgid "Find/Replace (Ctrl + F)<br>Find or replace text."
msgstr "Chercher / Remplacer (Ctrl+F)<br>Cherche ou remplace du texte."
#: src/bin/tools.c:383
msgid ""
"Go to line (Ctrl + L)<br>Open the Go to window to move the cursor<br>line "
"position."
msgstr ""
"Aller à la ligne (Ctrl+L)<br>Ouvre une boîte de dialogue pour déplacer<br>le "
"curseur à la ligne indiquée."
#: src/bin/tools.c:394
msgid "Line numbers<br>Display the script line numbers."
msgstr "Numéros de lignes<br>Affiche les numéros de lignes."
#: src/bin/tools.c:404
msgid ""
"Insert a code snippet (Ctrl + T)<br>Enventor chooses the best code with "
"regards<br>to the current editing context. For instance,<br>if the cursor is "
"inside a part section,<br>description code is generated."
msgstr ""
"Insérer un extrait de code (Ctrl+T)<br>Enventor sélectionne le code le plus "
"adapté au contexte<br>actuel. Par exemple, si le curseur se trouve<br>dans "
"une section Part, un code de<br>description est généré."
#: src/bin/tools.c:418
msgid ""
"Console box (Alt + Down)<br>Display the console box, which shows the "
"EDC<br>build logs, such as error messages. It pops<br>up automatically when "
"compilation errors occur."
msgstr ""
"Console (Alt+Flèche bas)<br>Affiche les journaux EDC tels que les messages "
"d'erreur.<br>Elle apparaît automatiquement quand des<br>erreurs de "
"compilation se produisent."
#: src/bin/tools.c:430
msgid ""
"File browser (F9)<br>Display the file browser, which shows a file list<br>in "
"current workspace."
msgstr ""
"Navigateur de fichiers (F9)<br>Affiche le navigateur pour lister les "
"fichiers<br>de l'espace de travail actuel."
#: src/bin/tools.c:441
msgid ""
"EDC navigator (F10)<br>Display the EDC navigator, which shows the "
"current<br>group hierarchy tree that contains parts,<br>descriptions and "
"programs lists."
msgstr ""
"Navigateur EDC (F10)<br>Affiche le navigateur montrant l'arbre hiérarchique "
"de<br>l'EDC actuel qui contient les parties, descriptions<br>et listes de "
"programmes."
#: src/bin/tools.c:453
msgid ""
"File tab (F11)<br>Display the file tab in the bottom area<br>It shows an "
"opened file list to switch<br>files quickly."
msgstr ""
"Onglet (F11)<br>Affiche l'onglet de la zone inférieure qui regroupe<br>les "
"fichiers EDC et permet de passer<br>rapidement de l'un à l'autre."
#: src/bin/tools.c:467
msgid "Enventor menu (Esc)<br>Open the Enventor main menu."
msgstr "Enventor Menu (Échap)<br>Ouvre le menu principal d'Enventor."
#: src/bin/tools.c:514
msgid "Part highlighting enabled."
msgstr "Mode surbrillance activé."
#: src/bin/tools.c:516
msgid "Part highlighting disabled."
msgstr "Mode surbrillance désactivé."
#: src/bin/tools.c:601
msgid "Dummy parts enabled."
msgstr "Mode maquette activé."
#: src/bin/tools.c:603
msgid "Dummy parts disabled."
msgstr "Mode maquette désactivé."
#: src/bin/tools.c:625
msgid "Wireframes enabled."
msgstr "Mode encadrement activé."
#: src/bin/tools.c:627
msgid "Wireframes disabled."
msgstr "Mode encadrement désactivé."
#: src/bin/tools.c:650
msgid "Mirror mode enabled."
msgstr "Mode miroir activé."
#: src/bin/tools.c:652
msgid "Mirror mode disabled."
msgstr "Mode miroir désactivé."
#: src/bin/tools.c:706
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr "L'insertion de modèles de code est désactivée en mode Live Edit"
#: src/bin/tools.c:717
#, c-format
msgid "Template code inserted, (%s)"
msgstr "Insertion du modèle de code, (%s)"
#: src/bin/tools.c:723
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."
msgstr ""
"L'insertion d'un modèle de code n'est pas possible ici. Déplacer le curseur "
"dans la section « Collections,Images,Parts,Part,Programs »."

540
po/it.po
View File

@ -1,540 +0,0 @@
# Italian translation for enventor.
# This file is distributed under the same license as the enventor package.
# Massimo Maiurana <maiurana@gmail.com>, 2016.
#
msgid ""
msgstr ""
"Project-Id-Version: enventor 1.0.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-05 11:59+0100\n"
"PO-Revision-Date: 2021-12-05 12:01+0100\n"
"Last-Translator: Massimo Maiurana <maiurana@gmail.com>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/bin/base_gui.c:70
#, c-format
msgid "%s - Enventor"
msgstr "%s - Enventor"
#: src/bin/config_data.c:78
msgid "Failed to generate tmp folder!"
msgstr "Non ho potuto creare la directory temporanea!"
#: src/bin/config_data.c:99
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr "Non ho potuto creare una directory di configurazione \"%s\""
#: src/bin/config_data.c:113
#, c-format
msgid "Cannot create a enventor config folder \"%s\""
msgstr ""
"Non ho potuto creare una directory di configurazione di enventor \"%s\""
#: src/bin/config_data.c:124
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr "Non ho potuto salvare un file di configurazione \"%s\""
#: src/bin/config_data.c:163
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr "Non ho potuto caricare un file di configurazione \"%s\""
#: src/bin/config_data.c:171
msgid "Failed to allocate Memory!"
msgstr "Non ho potuto allocare memoria!"
#: src/bin/file_mgr.c:89
msgid "EDC has been changed on the file system."
msgstr "Il file EDC è cambiato sul file system."
#: src/bin/file_mgr.c:91
msgid "Do you want to replace the contents?"
msgstr "Vuoi sostituire il contenuto?"
#: src/bin/file_mgr.c:102
msgid "Save As"
msgstr "Salva con nome"
#: src/bin/file_mgr.c:110 src/bin/search.c:427
msgid "Replace"
msgstr "Sostituisci"
#: src/bin/file_mgr.c:116
msgid "Ignore"
msgstr "Ignora"
#: src/bin/file_mgr.c:197
#, c-format
msgid "File saved. \"%s\""
msgstr "File salvato. \"%s\""
#: src/bin/file_mgr.c:199
#, c-format
msgid "Already saved. \"%s\""
msgstr "Già salvato. \"%s\""
#: src/bin/goto.c:78
msgid "Invalid line number"
msgstr "Numero di riga non valido"
#: src/bin/goto.c:133
msgid "Enventor Goto Line"
msgstr "Enventor va alla riga"
#: src/bin/goto.c:137
msgid "Go to Line"
msgstr "Vai alla riga"
#: src/bin/goto.c:158
#, c-format
msgid "Enter line number [1..%d]:"
msgstr "Inserire il numero della rigar [1..%d]:"
#: src/bin/goto.c:182 src/bin/menu.c:154
msgid "Ok"
msgstr "Ok"
#: src/bin/goto.c:194 src/bin/search.c:449
msgid "Failed to grab key - Escape"
msgstr "Non ho potuto acquisire il tasto - Escape"
#: src/bin/live_edit.c:2020 src/bin/live_edit.c:2057 src/bin/live_edit.c:2059
#: src/bin/main.c:872 src/lib/auto_comp.c:410 src/lib/ctxpopup.c:813
#, c-format
msgid "Failed to grab key - %s"
msgstr "Non ho potuto acquisire il tasto -%s"
#: src/bin/live_edit.c:2140
msgid ""
"Double click part to confirm.(Esc = cancel, Direction Key = move item per "
"pixel,Ctrl = disable auto-aligning)"
msgstr ""
"Doppio clic sulla parte per confermare. (Esc = annulla, tasti direzione = "
"sposta un pixel per volta, Ctrl = disabilita allineamento automatico)"
#: src/bin/live_edit.c:2160
msgid ""
"Add a Rect part to the live view.<br>A Rect part is used as a solid "
"color<br>component or clipping other components."
msgstr ""
"Aggiunge una parte Rect all'anteprima.<br>Una parte Rect viene usata come un "
"componente<br>di colore pieno o per il clipping di altri componenti."
#: src/bin/live_edit.c:2166
msgid ""
"Add a Text part to the live view.<br>A Text part is used for plain text."
msgstr ""
"§Aggiunge una parte Text all'anteprima.<br> Una parte Text viene usata per "
"il testo semplice."
#: src/bin/live_edit.c:2171
msgid ""
"Add an Image part to the live view.<br>An Image part contains a single "
"image<br>resource, usually an image file."
msgstr ""
"Aggiunge una parte Image all'anteprima.<br> Una parte Image contiene solo "
"una risorsa immagine,<br> di solito un file"
#: src/bin/live_edit.c:2177
msgid ""
"Add a Swallow part to the live view.<br>A Swallow part is a placeholder "
"for<br>objects that you may want to<br>include in the layout later."
msgstr ""
"Aggiunge una parte Swallow all'anteprima.<br>Una parte Swallow è un "
"segnaposto per oggetti che<br>possono essere inclusi nel layout "
"successivamente."
#: src/bin/live_edit.c:2184
msgid ""
"Add a Textblock part to the live view.<br>A Textblock part is a rich-text "
"part<br>that can show big chunks of text."
msgstr ""
"Aggiunge una parte Textblok all'anteprima.<br>Una parte Textblock contiene "
"testo formattato e<br>può visualizzare grossi spezzoni di testo."
#: src/bin/live_edit.c:2190
msgid ""
"Add a Spacer part to the live view.<br>A Spacer part is an anchor to locate "
"<br>other parts. It is invisible and<br>normally used for padding."
msgstr ""
"Aggiunge una parte Spacer all'anteprima.<br>Una parte Spacer è un'ancora per "
"altre parti.<br>È invisibile e viene usata normalmente per il padding."
#: src/bin/live_edit.c:2350
msgid "Faild to allocate Memory!"
msgstr "Non ho potuto allocare memoria!"
#: src/bin/main.c:212
#, c-format
msgid "Font Size: %1.1fx"
msgstr "Dimensione font: %1.1fx"
#: src/bin/main.c:944
#, c-format
msgid "Cannot create temporary diretory \"%s\""
msgstr "Non ho potuto creare la directory temporanea \"%s\""
#: src/bin/menu.c:141
msgid "New File: Choose a Template"
msgstr "Nuovo file: scegliere un modello"
#: src/bin/menu.c:160 src/bin/menu.c:206 src/bin/setting.c:242
msgid "Cancel"
msgstr "Annulla"
#: src/bin/menu.c:179
msgid "You have unsaved changes."
msgstr "Ci sono modifiche non salvate."
#: src/bin/menu.c:181
msgid "Do you want to save the changes?"
msgstr "Volete salvare le modifiche?"
#: src/bin/menu.c:192 src/bin/menu.c:475 src/bin/menu.c:591
msgid "Save"
msgstr "Salva"
#: src/bin/menu.c:200
msgid "Discard"
msgstr "Scarta"
#: src/bin/menu.c:328
msgid "Choose a file to save"
msgstr "Scegliere un file da salvare"
#: src/bin/menu.c:365
#, c-format
msgid "Failed to save: %s."
msgstr "Impossibile salvare: %s."
#: src/bin/menu.c:419
msgid "Support only .edc file."
msgstr "Solo i file .edc sono supportati."
#: src/bin/menu.c:429
msgid "Choose a file to load."
msgstr "Scegliere un file da aprire."
#: src/bin/menu.c:440
#, c-format
msgid "Failed to load: %s."
msgstr "Impossibile aprire: %s."
#: src/bin/menu.c:467
msgid "Save File: Choose a EDC"
msgstr "Salva file: scegliere un EDC"
#: src/bin/menu.c:476 src/bin/menu.c:511
msgid "Close"
msgstr "Chiudi"
#: src/bin/menu.c:501
msgid "Load File: Choose a EDC"
msgstr "Apri file: scegliere un EDC"
#: src/bin/menu.c:510 src/bin/menu.c:595
msgid "Load"
msgstr "Apri"
#: src/bin/menu.c:586
msgid "New"
msgstr "Nuovo"
#: src/bin/menu.c:599 src/bin/setting.c:198
msgid "Settings"
msgstr "Impostazioni"
#: src/bin/menu.c:603
msgid "Help"
msgstr "Aiuto"
#: src/bin/menu.c:607
msgid "Exit"
msgstr "Esci"
#: src/bin/newfile.c:79
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr "Non riesco a trovare la cartella dei modelli! \"%s\""
#: src/bin/newfile.c:124 src/bin/newfile.c:146
#, c-format
msgid "Cannot find file! \"%s\""
msgstr "Non riesco a trovare il file! \"%s\""
#: src/bin/search.c:96
#, c-format
msgid "%d matches replaced"
msgstr "%d corrispondenze sostituite"
#: src/bin/search.c:150 src/bin/search.c:210
#, c-format
msgid "No \"%s\" in the text"
msgstr "Non esiste \"%s\" nel testo"
#: src/bin/search.c:248 src/bin/search.c:413
msgid "Previous"
msgstr "Precedente"
#: src/bin/search.c:280 src/bin/search.c:420
msgid "Next"
msgstr "Successivo"
#: src/bin/search.c:364
msgid "Enventor Search"
msgstr "Ricerca di Enventor"
#: src/bin/search.c:367
msgid "Find/Replace"
msgstr "Trova/Sostituisci"
#: src/bin/search.c:434
msgid "Replace All"
msgstr "Sostituisci tutto"
#: src/bin/setting.c:210
msgid "Preferences"
msgstr "Preferenze"
#: src/bin/setting.c:212
msgid "Text Editor"
msgstr "Editor di testo"
#: src/bin/setting.c:214
msgid "EDC Build"
msgstr "Compila EDC"
#: src/bin/setting.c:228
msgid "Apply"
msgstr "Applica"
#: src/bin/setting.c:235
msgid "Reset"
msgstr "Reimposta"
#: src/bin/statusbar.c:319
msgid "View zoom level (Ctrl + Mouse Wheel)<br>Zoom the live view in or out."
msgstr ""
"Livello dello zoom (Ctrl + rotella mouse)<br>Ingrandisce e rimpicciolisce "
"l'anteprima"
#: src/bin/statusbar.c:325
msgid "Resize the width and height of the live view."
msgstr "Ridimensiona larghezza e altezza dell'anteprima"
#: src/bin/statusbar.c:330
msgid "Swap the width and height of the live view."
msgstr "Scambia larghezza e altezza dell'anteprima"
#: src/bin/statusbar.c:340
msgid ""
"Mouse cursor position in live view.<br>Absolute coordinate | Relative "
"coordinate."
msgstr ""
"Posizione puntatore nell'anteprima.<br> Coordinate assolute | Coordinate "
"relative."
#: src/bin/statusbar.c:351
msgid "Name of the current editing group."
msgstr "Nome del gruppo attualmente in modifica"
#: src/bin/statusbar.c:361
msgid "Cursor line number : Max line number"
msgstr "Numero riga del cursore : numero massimo di righe"
#: src/bin/text_setting.c:552
#, c-format
msgid "Failed to open file \"%s\""
msgstr "Non ho potuto aprire il file \"%s\""
#: src/bin/text_setting.c:915
msgid "Double click a keyword to change its color :"
msgstr "Doppio clic su una keyword per cambiarne il colore"
#: src/bin/text_setting.c:1010
msgid "Font Name"
msgstr "Nome del font"
#: src/bin/text_setting.c:1037
msgid "Font Style"
msgstr "Stile del font"
#: src/bin/tools.c:142
msgid "Redo text."
msgstr "Ripeti testo."
#: src/bin/tools.c:144
msgid "No text to be redo."
msgstr "Nessun testo da ripetere."
#: src/bin/tools.c:152
msgid "Undo text."
msgstr "Annulla testo"
#: src/bin/tools.c:154
msgid "No text to be undo."
msgstr "Nessun testo da annullare"
#: src/bin/tools.c:244
msgid ""
"Part highlighting (Ctrl + H)<br>Show a highlight effect on the selected "
"part<br>in the live view."
msgstr ""
"Evidenziazione parte (Ctrl + H)<br>Mostra un effetto evidenziazione "
"sulla<br>parte selezionata nell'anteprima."
#: src/bin/tools.c:256
msgid ""
"Dummy parts (Ctrl + U)<br>Display virtual images for the swallow "
"and<br>spacer parts."
msgstr ""
"Parti fittizie (Ctrl + U)<br>Mostra immagini virtuali per le "
"parti<br>Swallow e Spacer."
#: src/bin/tools.c:268
msgid ""
"Wireframes (Ctrl + W)<br>Display wireframes to identify the "
"parts<br>boundaries."
msgstr ""
"Incorniciamento (Ctrl + W)<br>Mostra una cornice che identifica i<br>confini "
"della parte."
#: src/bin/tools.c:280
msgid ""
"Mirror mode (Ctrl + M)<br>Invert the layout horizontally and review<br>the "
"designed layout in RTL(right-to-left)<br>LTR(left-to-right) settings."
msgstr ""
"Modalità specchio (§Ctrl + M)<br>Inverte orizzontalmente il layout e ne "
"rivede le<br>impostazioni RTL (da destra a sinistra) e LTR<br>(da sinistra a "
"destra)."
#: src/bin/tools.c:348
msgid "Save the file (Ctrl + S)<br>Save the current script to a file."
msgstr "Salva il file (Ctrl + S)<br>Salva l'attuale script in un file."
#: src/bin/tools.c:357
msgid "Undo text (Ctrl + Z)"
msgstr "Annulla testo (Ctrl + Z)"
#: src/bin/tools.c:365
msgid "Redo text (Ctrl + R)"
msgstr "Ripeti testo (Ctrl + R)"
#: src/bin/tools.c:373
msgid "Find/Replace (Ctrl + F)<br>Find or replace text."
msgstr "Trova/Sostituisci (Ctrl + F)<br>Trova o sostituisce il testo."
#: src/bin/tools.c:383
msgid ""
"Go to line (Ctrl + L)<br>Open the Go to window to move the cursor<br>line "
"position."
msgstr ""
"Vai alla riga (Ctrl + L)<br>Apre la fienstre \"Vai a\" per spostare "
"la<br>riga in cui è posizionato il cursore."
#: src/bin/tools.c:394
msgid "Line numbers<br>Display the script line numbers."
msgstr "Numeri di riga<br>Visualizza i numeri di riga dello script."
#: src/bin/tools.c:404
msgid ""
"Insert a code snippet (Ctrl + T)<br>Enventor chooses the best code with "
"regards<br>to the current editing context. For instance,<br>if the cursor is "
"inside a part section,<br>description code is generated."
msgstr ""
"Inserisci codice (Ctrl + T)<br>Enventor sceglie il codice migliore sulla "
"base del<br>contesto attuale. Ad esempio, se il cursore si trova<br>nella "
"sezione \"part\" viene generato un codice<br>\"description\"."
#: src/bin/tools.c:418
msgid ""
"Console box (Alt + Down)<br>Display the console box, which shows the "
"EDC<br>build logs, such as error messages. It pops<br>up automatically when "
"compilation errors occur."
msgstr "Box console (Alt + Giù)<br>Visualizza il box console che mostra i messaggi del log<br>di compilazione dell'EDC, come quelli di errore. Viene<br>visualizzato automaticamente quando avviene un errore di<br>compilazione."
#: src/bin/tools.c:430
msgid ""
"File browser (F9)<br>Display the file browser, which shows a file list<br>in "
"current workspace."
msgstr ""
"Navigatore file (F9)<br>Visualizza un navigatore di file che mostra una "
"lista<br>dei file nell'attuale spazio di lavoro."
#: src/bin/tools.c:441
msgid ""
"EDC navigator (F10)<br>Display the EDC navigator, which shows the "
"current<br>group hierarchy tree that contains parts,<br>descriptions and "
"programs lists."
msgstr ""
"Navigatore EDC (F10)<br>Visualizza un navigatore di EDC che mostra "
"l'albero<br>gerarchico dell'attuale EDC che contiene l'elenco di<br>parti, "
"descrizioni e programmi."
#: src/bin/tools.c:453
msgid ""
"File tab (F11)<br>Display the file tab in the bottom area<br>It shows an "
"opened file list to switch<br>files quickly."
msgstr ""
"Etichette file (F11)<br>Visualizza le etichette dei file nell'area in fondo "
"per<br>passare rapidamente da un file aperto all'altro."
#: src/bin/tools.c:467
msgid "Enventor menu (Esc)<br>Open the Enventor main menu."
msgstr "Menù di Enventor (Esc)<br>Apre il menù principale di Enventor."
#: src/bin/tools.c:514
msgid "Part highlighting enabled."
msgstr "Evidenziazione parte abilitata."
#: src/bin/tools.c:516
msgid "Part highlighting disabled."
msgstr "Evidenziazione parte disabilitata."
#: src/bin/tools.c:601
msgid "Dummy parts enabled."
msgstr "Parti fittizie abilitate."
#: src/bin/tools.c:603
msgid "Dummy parts disabled."
msgstr "Parti fittizie disabilitate."
#: src/bin/tools.c:625
msgid "Wireframes enabled."
msgstr "Incorniciamenti abilitati."
#: src/bin/tools.c:627
msgid "Wireframes disabled."
msgstr "Incorniciamenti disabilitati."
#: src/bin/tools.c:650
msgid "Mirror mode enabled."
msgstr "Modalità specchio abilitata."
#: src/bin/tools.c:652
msgid "Mirror mode disabled."
msgstr "Modalità specchio disabilitata."
#: src/bin/tools.c:706
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr ""
"L'inserimento di modelli di codice è disabilitata in modalità Live Edit"
#: src/bin/tools.c:717
#, c-format
msgid "Template code inserted, (%s)"
msgstr "Modello di codice inserito, (%s)"
#: src/bin/tools.c:723
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."
msgstr ""
"Impossibile inserire modelli di codice qui. Spostare il cursore in "
"\"Collections,Images,Parts,Part,Programs\\\""

543
po/ka.po
View File

@ -1,543 +0,0 @@
# Georgian translation for enventor.
# This file is put in the public domain.
# Temuri Doghonadze <temuri.doghonadze@gmail.com>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: enventor\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-05 11:59+0100\n"
"PO-Revision-Date: 2023-02-10 18:54+0100\n"
"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
"Language-Team: Georgian <(nothing)>\n"
"Language: ka\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.2.2\n"
#: src/bin/base_gui.c:70
#, c-format
msgid "%s - Enventor"
msgstr "%s - Enventor"
#: src/bin/config_data.c:78
msgid "Failed to generate tmp folder!"
msgstr "დროებითი საქაღალდის შექმნის შეცდომა!"
#: src/bin/config_data.c:99
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr "კონფიგურაციის საქაღალდის (\"%s\") შექმნის შეცდომა"
#: src/bin/config_data.c:113
#, c-format
msgid "Cannot create a enventor config folder \"%s\""
msgstr "Enventor-ის კონფიგურაციის საქაღალდის (\"%s\") შექმნის შეცდომა"
#: src/bin/config_data.c:124
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr "კონფიგურაციის ფაილის (\"%s\") შენახვის შეცდომა"
#: src/bin/config_data.c:163
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr "კონფიგურაციის ფაილის (\"%s\") ჩატვირთვის შეცდომა"
#: src/bin/config_data.c:171
msgid "Failed to allocate Memory!"
msgstr "მეხსიერების გამოყოფის შეცდომა!"
#: src/bin/file_mgr.c:89
msgid "EDC has been changed on the file system."
msgstr "ფაილურ სისტემაზე EDC შეიცვალა."
#: src/bin/file_mgr.c:91
msgid "Do you want to replace the contents?"
msgstr "გნებავთ შემცველობის ჩანაცვლება?"
#: src/bin/file_mgr.c:102
msgid "Save As"
msgstr "შენახვა, როგორც"
#: src/bin/file_mgr.c:110 src/bin/search.c:427
msgid "Replace"
msgstr "ჩანაცვლება"
#: src/bin/file_mgr.c:116
msgid "Ignore"
msgstr "იგნორი"
#: src/bin/file_mgr.c:197
#, c-format
msgid "File saved. \"%s\""
msgstr "ფაილი შენახულია. \"%s\""
#: src/bin/file_mgr.c:199
#, c-format
msgid "Already saved. \"%s\""
msgstr "უკვე შენახულია. \"%s\""
#: src/bin/goto.c:78
msgid "Invalid line number"
msgstr "ხაზის არასწორი ნომერი"
#: src/bin/goto.c:133
msgid "Enventor Goto Line"
msgstr "Enventor ხაზზე გადასვლა"
#: src/bin/goto.c:137
msgid "Go to Line"
msgstr "ხაზზე გადასვლა"
#: src/bin/goto.c:158
#, c-format
msgid "Enter line number [1..%d]:"
msgstr "შეიყვანეთ ხაზის ნომერი [1..%d]:"
#: src/bin/goto.c:182 src/bin/menu.c:154
msgid "Ok"
msgstr "დიახ"
#: src/bin/goto.c:194 src/bin/search.c:449
msgid "Failed to grab key - Escape"
msgstr "ღილაკის ჩაჭერის შეცდომა - Escape"
#: src/bin/live_edit.c:2020 src/bin/live_edit.c:2057 src/bin/live_edit.c:2059
#: src/bin/main.c:872 src/lib/auto_comp.c:410 src/lib/ctxpopup.c:813
#, c-format
msgid "Failed to grab key - %s"
msgstr "ღილაკის ჩაჭერის შეცდომა - %s"
#: src/bin/live_edit.c:2140
msgid ""
"Double click part to confirm.(Esc = cancel, Direction Key = move item per "
"pixel,Ctrl = disable auto-aligning)"
msgstr ""
"ორმაგი წკაპი დასადასტურებლად .(Esc = გასაუქმებლად, მიმართულების ისარი = "
"ჩანაწერის ერთი პიქსელით გადატანა,Ctrl = ავტომატური სწორების გამორთვა)"
#: src/bin/live_edit.c:2160
msgid ""
"Add a Rect part to the live view.<br>A Rect part is used as a solid "
"color<br>component or clipping other components."
msgstr ""
"ცოცხალი ხედისთვის მრავალკუთხედი ნაწილის დამატება.<br>მრავალკუთხედი ნაწილი "
"შეგიძლიათ ერთგვარი ფერის<br>კომპონენტის ან სხვა კომპონენტების მისამაგრებლად "
"გამოიყენოთ."
#: src/bin/live_edit.c:2166
msgid ""
"Add a Text part to the live view.<br>A Text part is used for plain text."
msgstr ""
"ცოცხალ ხედზე ტექსტის ნაწილის დამატება.<br>ტექსტის ნაწილი უბრალო ტექსტისთვის "
"გამოიყენება."
#: src/bin/live_edit.c:2171
msgid ""
"Add an Image part to the live view.<br>An Image part contains a single "
"image<br>resource, usually an image file."
msgstr ""
"ცოცხალი ხედისთვის გამოსახულების ნაწილის დამატება.<br>გამოსახულების ნაწილი "
"ერთ გამოსახულების<br>რესურსს შეიცავს, ჩვეულებრივ სურათის ფაილს."
#: src/bin/live_edit.c:2177
msgid ""
"Add a Swallow part to the live view.<br>A Swallow part is a placeholder "
"for<br>objects that you may want to<br>include in the layout later."
msgstr ""
"ცოცხალი ხედისთვის Swallow ნაწილის დამატება.<br>Swallow ნაწილი ადგილმჭერია "
"<br> ობიექტებისთვის, რომლების ჩასმაც შეიძლება<br>მოგვიანებით მოგინდეთ."
#: src/bin/live_edit.c:2184
msgid ""
"Add a Textblock part to the live view.<br>A Textblock part is a rich-text "
"part<br>that can show big chunks of text."
msgstr ""
"ცოცხალი ხედისთვის ტექსტური ბლოკის ნაწილის დამატება.<br>ტექსტური ბლოკის ნაწილ "
"მდიდარი ტექსტის ნაწილია,<br>რომელსაც დიდი ტექსტების ჩვენება შეუძლია."
#: src/bin/live_edit.c:2190
msgid ""
"Add a Spacer part to the live view.<br>A Spacer part is an anchor to locate "
"<br>other parts. It is invisible and<br>normally used for padding."
msgstr ""
"ცოცხალი ხედისთვის Spacer ნაწილის დამატება.<br>ნაწილი Spacer მარყუჟია, "
"რითიც<br>სხვა ნაწილებს იპოვით. ის უჩინარია და "
"ჩვეულებრივ<br>გამოტოვებებისთვის გამოიყენება."
#: src/bin/live_edit.c:2350
msgid "Faild to allocate Memory!"
msgstr "მეხსიერების გამოყოფის შეცდომა!"
#: src/bin/main.c:212
#, c-format
msgid "Font Size: %1.1fx"
msgstr "ფონტის ზომა: %1.1fx"
#: src/bin/main.c:944
#, c-format
msgid "Cannot create temporary diretory \"%s\""
msgstr "დროებითი საქაღალდის შექმნის შეცდომა (%s)"
#: src/bin/menu.c:141
msgid "New File: Choose a Template"
msgstr "ახალი ფაილი: აირჩიეთ ნიმუში"
#: src/bin/menu.c:160 src/bin/menu.c:206 src/bin/setting.c:242
msgid "Cancel"
msgstr "გაუქმება"
#: src/bin/menu.c:179
msgid "You have unsaved changes."
msgstr "გაქვთ შეუნახავი ცვლილებები."
#: src/bin/menu.c:181
msgid "Do you want to save the changes?"
msgstr "გსურთ ცვლილებების შენახვა?"
#: src/bin/menu.c:192 src/bin/menu.c:475 src/bin/menu.c:591
msgid "Save"
msgstr "შენახვა"
#: src/bin/menu.c:200
msgid "Discard"
msgstr "გაუქმება"
#: src/bin/menu.c:328
msgid "Choose a file to save"
msgstr "აირჩიეთ შესანახი ფაილი"
#: src/bin/menu.c:365
#, c-format
msgid "Failed to save: %s."
msgstr "შენახვის შეცდომა: %s."
#: src/bin/menu.c:419
msgid "Support only .edc file."
msgstr "მხარდაჭერილია მხოლოდ .edc ფაილი."
#: src/bin/menu.c:429
msgid "Choose a file to load."
msgstr "აირჩიეთ ჩასატვირთი ფაილი."
#: src/bin/menu.c:440
#, c-format
msgid "Failed to load: %s."
msgstr "ჩატვირთვის შეცდომა: %s."
#: src/bin/menu.c:467
msgid "Save File: Choose a EDC"
msgstr "ფაილის შენახვა: აირჩიეთ EDC"
#: src/bin/menu.c:476 src/bin/menu.c:511
msgid "Close"
msgstr "დახურვა"
#: src/bin/menu.c:501
msgid "Load File: Choose a EDC"
msgstr "ფაილის ჩატვირთვა: აირჩიეთ EDC"
#: src/bin/menu.c:510 src/bin/menu.c:595
msgid "Load"
msgstr "ჩატვირთვა"
#: src/bin/menu.c:586
msgid "New"
msgstr "ახალი"
#: src/bin/menu.c:599 src/bin/setting.c:198
msgid "Settings"
msgstr "მორგება"
#: src/bin/menu.c:603
msgid "Help"
msgstr "დახმარება"
#: src/bin/menu.c:607
msgid "Exit"
msgstr "გასვლა"
#: src/bin/newfile.c:79
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr "ნიმუშების საქაღალდე ვერ ვიპოვე! \"%s\""
#: src/bin/newfile.c:124 src/bin/newfile.c:146
#, c-format
msgid "Cannot find file! \"%s\""
msgstr "ფაილი ვერ ვიპოვე! \"%s\""
#: src/bin/search.c:96
#, c-format
msgid "%d matches replaced"
msgstr "ჩანაცვლებულია %d დამთხვევა"
#: src/bin/search.c:150 src/bin/search.c:210
#, c-format
msgid "No \"%s\" in the text"
msgstr "ტექსტში \"%s\" აღმოჩენილი არაა"
#: src/bin/search.c:248 src/bin/search.c:413
msgid "Previous"
msgstr "წინა"
#: src/bin/search.c:280 src/bin/search.c:420
msgid "Next"
msgstr "შემდეგი"
#: src/bin/search.c:364
msgid "Enventor Search"
msgstr "Enventor-ით ძებნა"
#: src/bin/search.c:367
msgid "Find/Replace"
msgstr "ძებნა/ჩანაცვლება"
#: src/bin/search.c:434
msgid "Replace All"
msgstr "ყველას ჩანაცვლება"
#: src/bin/setting.c:210
msgid "Preferences"
msgstr "მორგება"
#: src/bin/setting.c:212
msgid "Text Editor"
msgstr "ტექსტური რედაქტორი"
#: src/bin/setting.c:214
msgid "EDC Build"
msgstr "EDC-ის აგება"
#: src/bin/setting.c:228
msgid "Apply"
msgstr "გადატარება"
#: src/bin/setting.c:235
msgid "Reset"
msgstr "საწყისი მნიშვნელობებზე დაბრუნება"
#: src/bin/statusbar.c:319
msgid "View zoom level (Ctrl + Mouse Wheel)<br>Zoom the live view in or out."
msgstr ""
"გადიდების დონის ნახვა (Ctrl + თაგუნას ბორბალი)<br>ცოცხალი ხედის გადიდება/"
"დაპატარავება."
#: src/bin/statusbar.c:325
msgid "Resize the width and height of the live view."
msgstr "ცოცხალი ხედის სიგრძისა და სიგანის შეცვლა."
#: src/bin/statusbar.c:330
msgid "Swap the width and height of the live view."
msgstr "ცოცხალი ხედის სიგრძისა და სიგანის მიმოცვლა."
#: src/bin/statusbar.c:340
msgid ""
"Mouse cursor position in live view.<br>Absolute coordinate | Relative "
"coordinate."
msgstr ""
"თაგუნას კურსორის პოზიცია ცოცხალ ხედში.<br>აბსოლუტური კოორდინატები | "
"ფარდობითი კოორდინატები."
#: src/bin/statusbar.c:351
msgid "Name of the current editing group."
msgstr "მიმდინარე ჩასწორების ჯგუფის სახელი."
#: src/bin/statusbar.c:361
msgid "Cursor line number : Max line number"
msgstr "კურსორის ხაზის სახელი : მაქს ხაზის ნომერი"
#: src/bin/text_setting.c:552
#, c-format
msgid "Failed to open file \"%s\""
msgstr "ვერ მოხერხდა ფაილის გახსნა \"%s\""
#: src/bin/text_setting.c:915
msgid "Double click a keyword to change its color :"
msgstr "საკვანძო სიტყვის ფერის შესაცვლელად ორჯერ დააწკაპუნეთ :"
#: src/bin/text_setting.c:1010
msgid "Font Name"
msgstr "ფონტის სახელი"
#: src/bin/text_setting.c:1037
msgid "Font Style"
msgstr "ფონტის სტილი"
#: src/bin/tools.c:142
msgid "Redo text."
msgstr "ტექსტის დაბრუნება."
#: src/bin/tools.c:144
msgid "No text to be redo."
msgstr "დასაბრუნებელი ტექსტის გარეშე."
#: src/bin/tools.c:152
msgid "Undo text."
msgstr "ტექსტის გაუქმება."
#: src/bin/tools.c:154
msgid "No text to be undo."
msgstr "გასაუქმებელი ტექსტის გარეშე."
#: src/bin/tools.c:244
msgid ""
"Part highlighting (Ctrl + H)<br>Show a highlight effect on the selected "
"part<br>in the live view."
msgstr ""
"ნაწილის გამოკვეთა (Ctrl + H)<br>ცოცხალ ხედში მონიშნული ნაწილის<br>გამოკვეთის "
"ეფექტი."
#: src/bin/tools.c:256
msgid ""
"Dummy parts (Ctrl + U)<br>Display virtual images for the swallow "
"and<br>spacer parts."
msgstr ""
"ცარიელი ნაწილები (Ctrl + U)<br>აჩვენებს ვირტუალურ გამოსახულებებს Swallow და "
"<br>Spacer ნაწილებისთვის."
#: src/bin/tools.c:268
msgid ""
"Wireframes (Ctrl + W)<br>Display wireframes to identify the "
"parts<br>boundaries."
msgstr ""
"მოდელები (Ctrl + W)<br>მოდელების ჩვენება ნაწილების<br>საზღვრების საცნობად."
#: src/bin/tools.c:280
msgid ""
"Mirror mode (Ctrl + M)<br>Invert the layout horizontally and review<br>the "
"designed layout in RTL(right-to-left)<br>LTR(left-to-right) settings."
msgstr ""
"სარკის რეჟიმი (Ctrl + M)<br>განლაგების ჰორიზონტალური ინვერსია<br>და მიღებული "
"განლაგების მიმოხილვა RTL(მარჯვნიდან მარცხნივ)<br>LTR(მარცხნიდან მარჯვნივ) "
"პარამეტრებში."
#: src/bin/tools.c:348
msgid "Save the file (Ctrl + S)<br>Save the current script to a file."
msgstr "ფაილის შენახვა (Ctrl + S)<br>მიმდინარე სკრიპტის ფაილში შენახვა."
#: src/bin/tools.c:357
msgid "Undo text (Ctrl + Z)"
msgstr "ტექსტის გაუქმება (Ctrl + Z)"
#: src/bin/tools.c:365
msgid "Redo text (Ctrl + R)"
msgstr "ტექსტის დაბრუნება (Ctrl + R)"
#: src/bin/tools.c:373
msgid "Find/Replace (Ctrl + F)<br>Find or replace text."
msgstr "პოვნა/ჩანაცვლება (Ctrl + F)<br>იპოვეთ ან ჩაანაცვლეთ ტექსტი."
#: src/bin/tools.c:383
msgid ""
"Go to line (Ctrl + L)<br>Open the Go to window to move the cursor<br>line "
"position."
msgstr ""
"ხაზზე გადასვლა (Ctrl + L)<br>გადასვლის განჯრის გახსნა კურსორის<br>სასურველ "
"ხაზზე გადასატანად."
#: src/bin/tools.c:394
msgid "Line numbers<br>Display the script line numbers."
msgstr "ხაზის ნომრები<br>სკრიპტის ხაზის ნომრების ჩვენება."
#: src/bin/tools.c:404
msgid ""
"Insert a code snippet (Ctrl + T)<br>Enventor chooses the best code with "
"regards<br>to the current editing context. For instance,<br>if the cursor is "
"inside a part section,<br>description code is generated."
msgstr ""
"კოდის ნაწყვეტის ჩასმა (Ctrl + T)<br>Enventor აირჩევს კოდის საუკეთსო ნაწილს "
"მიმდინარე ჩასწორების კონტექსტის გათვალისწინებით.<br>მაგალითად, თუ კურსორი,"
"<br>ნაწილის კოდის სექციაშია,<br>გენერირდება აღწერის კოდი."
#: src/bin/tools.c:418
msgid ""
"Console box (Alt + Down)<br>Display the console box, which shows the "
"EDC<br>build logs, such as error messages. It pops<br>up automatically when "
"compilation errors occur."
msgstr ""
"კონსოლის ფანჯარა (Alt + Down)<br>აჩვენებს კონსოლის ფანჯარა, რომელშიც EDC-ის "
"ნახვა შეგეძლებათ, როგორიცაა<br>აგების ჟურნალი და შეცდომები.<br>ის აგების "
"შეცდომების დროს ავტომატურად ამოხტება."
#: src/bin/tools.c:430
msgid ""
"File browser (F9)<br>Display the file browser, which shows a file list<br>in "
"current workspace."
msgstr ""
"ფაილების ბრაუზერი (F9)<br>ფაილების ბრაუზერის ჩვენება. ს მიმდინარე სამუშაო "
"სივრცეში<br>არსებულ ფაილებს აჩვენებს."
#: src/bin/tools.c:441
msgid ""
"EDC navigator (F10)<br>Display the EDC navigator, which shows the "
"current<br>group hierarchy tree that contains parts,<br>descriptions and "
"programs lists."
msgstr ""
"EDC ნავიგატორი (F10)<br>EDC ნავიგატორი, რომელიც აჩვენებს მიმდინარე<br>ჯგუფის "
"იერარქიას, რომელიც ნაწილებს,<br>აღწერებს და პროგრამის სიებს შეიძლება "
"შეიცავდეს."
#: src/bin/tools.c:453
msgid ""
"File tab (F11)<br>Display the file tab in the bottom area<br>It shows an "
"opened file list to switch<br>files quickly."
msgstr ""
"ფაილის ჩანართი (F11)<br>აჩვენებს ფაილის ჩანართს ქვედა მხარეში<br>ის ჩვენებს "
"გახსნილი ფაილების სიას<br>მათ შორის ადგილად გადასართველად."
#: src/bin/tools.c:467
msgid "Enventor menu (Esc)<br>Open the Enventor main menu."
msgstr "Enventor-ის მენიუ (Esc)<br>Enventor-ის მთავარი მენიუს გახსნა."
#: src/bin/tools.c:514
msgid "Part highlighting enabled."
msgstr "ნაწილის გამოკვეთა ჩართულია."
#: src/bin/tools.c:516
msgid "Part highlighting disabled."
msgstr "ნაწილის გამოკვეთა გამორთულია."
#: src/bin/tools.c:601
msgid "Dummy parts enabled."
msgstr "უაზრო ნაწილები ჩართულია."
#: src/bin/tools.c:603
msgid "Dummy parts disabled."
msgstr "უაზრო ნაწილები გამორთულია."
#: src/bin/tools.c:625
msgid "Wireframes enabled."
msgstr "მოდელი ჩართულია."
#: src/bin/tools.c:627
msgid "Wireframes disabled."
msgstr "მოდელი გამორთულია."
#: src/bin/tools.c:650
msgid "Mirror mode enabled."
msgstr "სარკის რეჟიი ჩართულია."
#: src/bin/tools.c:652
msgid "Mirror mode disabled."
msgstr "სარკის რეჟიი გამორთულია."
#: src/bin/tools.c:706
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr "ცოცხალი ჩასწორების რეჟიმში ნიმუშის ჩართვა გათიშულია"
#: src/bin/tools.c:717
#, c-format
msgid "Template code inserted, (%s)"
msgstr "ნიმუშის კოდი ჩასმულია. (%s)"
#: src/bin/tools.c:723
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."
msgstr ""
"აქ ნიმუშის კოდს ვერ ჩასვამთ. გადაიტანეთ კურსორი \"Collections,Images,Parts,"
"Part,Programs\" დიაპაზონში."

View File

@ -1,18 +0,0 @@
if get_option('nls')
i18n = import('i18n')
i18n.gettext(meson.project_name(),
args: [
'--directory=' + meson.source_root(),
'--keyword=_',
'--keyword=d_:1',
'--keyword=P_:1,2',
'--keyword=dP_:1,2',
'--keyword=N_',
'--keyword=NP_:1,2',
'--from-code=UTF-8',
'--foreign-user'
])
config_h.set('HAVE_GETTEXT', '1')
dep_intl = cc.find_library('intl', required : false)
endif

488
po/ru.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: enventor 0.6.0\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2016-08-28 01:00+0900\n"
"POT-Creation-Date: 2016-06-05 13:38+0900\n"
"PO-Revision-Date: 2015-12-10 12:07+0000\n"
"Last-Translator: NikaWhite belyavskijnb@gmail.com \n"
"Language-Team: \n"
@ -16,495 +16,403 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/bin/base_gui.c:70
#: src/bin/base_gui.c:67
#, c-format
msgid "%s - Enventor"
msgstr "%s - Enventor"
#: src/bin/config_data.c:76
#: src/bin/config_data.c:72
msgid "Failed to generate tmp folder!"
msgstr "Невозможно создать временную директорию!"
#: src/bin/config_data.c:97
#: src/bin/config_data.c:91 src/bin/config_data.c:104
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr "Невозможно создать директорию с конфигурационными файлами. \"%s\""
#: src/bin/config_data.c:111
#, fuzzy, c-format
msgid "Cannot create a enventor config folder \"%s\""
msgstr "Невозможно создать директорию с конфигурационными файлами. \"%s\""
#: src/bin/config_data.c:122
#: src/bin/config_data.c:115
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr "Неудалось сохранить файл настроек \"%s\""
#: src/bin/config_data.c:161
#: src/bin/config_data.c:157
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr "Неудалось загрузить настройки из файла \"%s\""
#: src/bin/config_data.c:169
#: src/bin/config_data.c:165 src/bin/file_mgr.c:193 src/bin/goto.c:136
#: src/bin/menu.c:613 src/bin/newfile.c:144 src/bin/panes.c:321
#: src/bin/search.c:337 src/bin/setting.c:187 src/bin/statusbar.c:312
#: src/bin/text_setting.c:405 src/bin/text_setting.c:456
#: src/bin/text_setting.c:487 src/bin/text_setting.c:956 src/bin/tools.c:186
msgid "Failed to allocate Memory!"
msgstr "Ошибка выделения памяти!"
#: src/bin/file_mgr.c:89
#: src/bin/file_mgr.c:71
msgid "EDC has been changed on the file system."
msgstr "EDC-файл был изменен друшим приложением."
#: src/bin/file_mgr.c:91
#: src/bin/file_mgr.c:73
msgid "Do you want to replace the contents?"
msgstr "Вы уверенны, что хотите заменить файл?"
#: src/bin/file_mgr.c:102
#: src/bin/file_mgr.c:84
msgid "Save As"
msgstr "Сохранить как"
#: src/bin/file_mgr.c:110 src/bin/search.c:421
#: src/bin/file_mgr.c:92 src/bin/search.c:407
msgid "Replace"
msgstr "Замена"
#: src/bin/file_mgr.c:116
#: src/bin/file_mgr.c:98
msgid "Ignore"
msgstr "Пропустить"
#: src/bin/file_mgr.c:197
#: src/bin/file_mgr.c:157
#, c-format
msgid "File saved. \"%s\""
msgstr "Файл сохранен. \"%s\""
#: src/bin/file_mgr.c:199
#: src/bin/file_mgr.c:159
#, c-format
msgid "Already saved. \"%s\""
msgstr "Сохранен. \"%s\""
#: src/bin/goto.c:78
#: src/bin/goto.c:93
msgid "Invalid line number"
msgstr "Неверный номер строки."
#: src/bin/goto.c:133
#: src/bin/goto.c:142
msgid "Enventor Goto Line"
msgstr "Enventor Перейти к строке"
#: src/bin/goto.c:137
#: src/bin/goto.c:146
msgid "Go to Line"
msgstr "Перейти к строке"
#: src/bin/goto.c:158
#: src/bin/goto.c:168
#, c-format
msgid "Enter line number [1..%d]:"
msgstr "Введите номер строки [1..%d]:"
#: src/bin/goto.c:182 src/bin/menu.c:154
#: src/bin/goto.c:192 src/bin/menu.c:150
msgid "Ok"
msgstr "Перейти"
#: src/bin/goto.c:194 src/bin/search.c:443
#: src/bin/goto.c:204 src/bin/search.c:429
msgid "Failed to grab key - Escape"
msgstr "Ошибка перехвата нажатия - Escape"
#: src/bin/live_edit.c:2020 src/bin/live_edit.c:2057 src/bin/live_edit.c:2059
#: src/bin/main.c:870 src/lib/auto_comp.c:410 src/lib/ctxpopup.c:779
#: src/bin/live_edit.c:2019 src/bin/live_edit.c:2063 src/bin/live_edit.c:2065
#: src/bin/main.c:850 src/lib/auto_comp.c:369 src/lib/ctxpopup.c:766
#, c-format
msgid "Failed to grab key - %s"
msgstr "Ошибка перехвата клавиши - %s"
#: src/bin/live_edit.c:2140
#: src/bin/live_edit.c:2132
msgid ""
"Double click part to confirm.(Esc = cancel, Direction Key = move item per "
"pixel,Ctrl = disable auto-aligning)"
"Double click part to confirm. (Esc = cancel, Direction Key = move item per "
"pixel, Ctrl = disable auto-aligning)"
msgstr ""
#: src/bin/live_edit.c:2160
msgid ""
"Add a Rect part to the live view.<br>A Rect part is used as a solid "
"color<br>component or clipping other components."
msgstr ""
#: src/bin/live_edit.c:2166
msgid ""
"Add a Text part to the live view.<br>A Text part is used for plain text."
msgstr ""
#: src/bin/live_edit.c:2171
msgid ""
"Add an Image part to the live view.<br>An Image part contains a single "
"image<br>resource, usually an image file."
msgstr ""
#: src/bin/live_edit.c:2177
msgid ""
"Add a Swallow part to the live view.<br>A Swallow part is a placeholder "
"for<br>objects that you may want to<br>include in the layout later."
msgstr ""
#: src/bin/live_edit.c:2184
msgid ""
"Add a Textblock part to the live view.<br>A Textblock part is a rich-text "
"part<br>that can show big chunks of text."
msgstr ""
#: src/bin/live_edit.c:2190
msgid ""
"Add a Spacer part to the live view.<br>A Spacer part is an anchor to locate "
"<br>other parts. It is invisible and<br>normally used for padding."
msgstr ""
#: src/bin/live_edit.c:2350
#: src/bin/live_edit.c:2280
msgid "Faild to allocate Memory!"
msgstr "Ошибка выделения памяти!"
#: src/bin/main.c:208
#: src/bin/main.c:24
msgid "Auto Completion Enabled."
msgstr "Автодополнение Включено."
#: src/bin/main.c:25
msgid "Auto Completion Disabled."
msgstr "Автодополнение Выключенно"
#: src/bin/main.c:34
msgid "Auto Indentation Enabled."
msgstr "Автовыравнивание Включено"
#: src/bin/main.c:35
msgid "Auto Indentation Disabled."
msgstr "Автовыравнивание Выключено"
#: src/bin/main.c:207
#, c-format
msgid "Font Size: %1.1fx"
msgstr "Размер шрифта: %1.1fx"
#: src/bin/main.c:942
#, fuzzy, c-format
msgid "Cannot create temporary diretory \"%s\""
msgstr "Невозможно создать директорию с конфигурационными файлами. \"%s\""
#: src/bin/menu.c:141
#, fuzzy
msgid "New File: Choose a Template"
#: src/bin/menu.c:137
msgid "New File: Choose a template"
msgstr "Новый файл: Выберите шаблон"
#: src/bin/menu.c:160 src/bin/menu.c:206 src/bin/setting.c:242
#: src/bin/menu.c:156 src/bin/menu.c:202 src/bin/setting.c:245
msgid "Cancel"
msgstr "Отмена"
#: src/bin/menu.c:179
#, fuzzy
msgid "You have unsaved changes."
#: src/bin/menu.c:175
msgid "Without save, you will lose last changes!"
msgstr "Без сохранения все изменения будут утеряны!"
#: src/bin/menu.c:177
msgid "Will you save changes?"
msgstr "Сохранить изменения?"
#: src/bin/menu.c:181
#, fuzzy
msgid "Do you want to save the changes?"
msgstr "Вы уверенны, что хотите заменить файл?"
#: src/bin/menu.c:192 src/bin/menu.c:475 src/bin/menu.c:591
#: src/bin/menu.c:188 src/bin/menu.c:466 src/bin/menu.c:582
msgid "Save"
msgstr "Сохранить"
#: src/bin/menu.c:200
#: src/bin/menu.c:196
msgid "Discard"
msgstr "Не сохранять"
#: src/bin/menu.c:328
#: src/bin/menu.c:324
msgid "Choose a file to save"
msgstr "Выбирете файл для сохранения"
#: src/bin/menu.c:365
#: src/bin/menu.c:351
#, c-format
msgid "Failed to save: %s."
msgstr "Неудалось сохранить: %s."
#: src/bin/menu.c:419
#: src/bin/menu.c:406
msgid "Support only .edc file."
msgstr "Поддерживаются файлы с расширением .edc."
#: src/bin/menu.c:429
#: src/bin/menu.c:416
msgid "Choose a file to load."
msgstr "Выбирете файл для загрузки."
#: src/bin/menu.c:440
#: src/bin/menu.c:427
#, c-format
msgid "Failed to load: %s."
msgstr "Невозможно загрузить: %s."
#: src/bin/menu.c:467
#: src/bin/menu.c:458
msgid "Save File: Choose a EDC"
msgstr "Сохранение: Выберите .edc файл"
#: src/bin/menu.c:476 src/bin/menu.c:511
#: src/bin/menu.c:467 src/bin/menu.c:502
msgid "Close"
msgstr "Закрыть"
#: src/bin/menu.c:501
#: src/bin/menu.c:492
msgid "Load File: Choose a EDC"
msgstr "Загрузка: Выберите .edc файл"
#: src/bin/menu.c:510 src/bin/menu.c:595
#: src/bin/menu.c:501 src/bin/menu.c:586
msgid "Load"
msgstr "Загрузить"
#: src/bin/menu.c:586
#: src/bin/menu.c:577
msgid "New"
msgstr "Новый"
#: src/bin/menu.c:599 src/bin/setting.c:198
#: src/bin/menu.c:590 src/bin/setting.c:201
msgid "Settings"
msgstr "Настройки"
#: src/bin/menu.c:603
#: src/bin/menu.c:594
msgid "Help"
msgstr ""
#: src/bin/menu.c:607
#: src/bin/menu.c:598
msgid "Exit"
msgstr "Выход"
#: src/bin/newfile.c:79
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr "Неудалось найди директорию с шаблонами! \"%s\""
#: src/bin/newfile.c:124 src/bin/newfile.c:146
#: src/bin/newfile.c:57 src/bin/newfile.c:82
#, c-format
msgid "Cannot find file! \"%s\""
msgstr "Неудалось найти файл! \"%s\""
#: src/bin/search.c:96
#: src/bin/newfile.c:128
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr "Неудалось найди директорию с шаблонами! \"%s\""
#: src/bin/search.c:82
#, c-format
msgid "%d matches replaced"
msgstr "%d совпадений заменено."
#: src/bin/search.c:145 src/bin/search.c:205
#: src/bin/search.c:132 src/bin/search.c:194
#, c-format
msgid "No \"%s\" in the text"
msgstr "Строка \"%s\" не найдена"
#: src/bin/search.c:242 src/bin/search.c:407
msgid "Previous"
msgstr ""
#: src/bin/search.c:233 src/bin/search.c:399
msgid "Backward"
msgstr "Назад"
#: src/bin/search.c:274 src/bin/search.c:414
msgid "Next"
msgstr ""
#: src/bin/search.c:265 src/bin/search.c:392
msgid "Forward"
msgstr "Вперед"
#: src/bin/search.c:358
#: src/bin/search.c:343
msgid "Enventor Search"
msgstr "Поиск"
#: src/bin/search.c:361
#: src/bin/search.c:346
msgid "Find/Replace"
msgstr "Поиск/Замена"
#: src/bin/search.c:428
#: src/bin/search.c:414
msgid "Replace All"
msgstr "Заменить все совпадения"
#: src/bin/setting.c:210
#: src/bin/setting.c:213
#, fuzzy
msgid "Preferences"
msgstr "Дополнительные настройки:"
#: src/bin/setting.c:212
#: src/bin/setting.c:215
msgid "Text Editor"
msgstr "Текст"
#: src/bin/setting.c:214
#: src/bin/setting.c:217
msgid "EDC Build"
msgstr ""
#: src/bin/setting.c:228
#: src/bin/setting.c:231
msgid "Apply"
msgstr "Применить"
#: src/bin/setting.c:235
#: src/bin/setting.c:238
msgid "Reset"
msgstr "Сбросить"
#: src/bin/statusbar.c:319
msgid "View zoom level (Ctrl + Mouse Wheel)<br>Zoom the live view in or out."
msgstr ""
#: src/bin/statusbar.c:325
msgid "Resize the width and height of the live view."
msgstr ""
#: src/bin/statusbar.c:330
msgid "Swap the width and height of the live view."
msgstr ""
#: src/bin/statusbar.c:340
msgid ""
"Mouse cursor position in live view.<br>Absolute coordinate | Relative "
"coordinate."
msgstr ""
#: src/bin/statusbar.c:351
msgid "Name of the current editing group."
msgstr ""
#: src/bin/statusbar.c:361
msgid "Cursor line number : Max line number"
msgstr ""
#: src/bin/text_setting.c:552
#: src/bin/text_setting.c:438
#, c-format
msgid "Failed to open file \"%s\""
msgstr "Неудалось открыть файл \"%s\""
#: src/bin/text_setting.c:909
#: src/bin/text_setting.c:759
msgid "Double click a keyword to change its color :"
msgstr "Двойной клик по слову позволит задать цвет:"
#: src/bin/text_setting.c:1004
#: src/bin/text_setting.c:796
msgid "Font Size "
msgstr "Размер шрифта "
#: src/bin/text_setting.c:829
msgid "Font Name"
msgstr "Имя шрифта"
#: src/bin/text_setting.c:1031
#: src/bin/text_setting.c:856
msgid "Font Style"
msgstr "Стиль шрифта"
#: src/bin/tools.c:142
#: src/bin/tools.c:134
msgid "Redo text."
msgstr "Восстановить изменения"
#: src/bin/tools.c:144
#: src/bin/tools.c:136
msgid "No text to be redo."
msgstr "Нет действий для восстановления"
#: src/bin/tools.c:152
#: src/bin/tools.c:144
msgid "Undo text."
msgstr "Отменить изменения"
#: src/bin/tools.c:154
#: src/bin/tools.c:146
msgid "No text to be undo."
msgstr "Нет изменений для отмены"
#: src/bin/tools.c:209
msgid ""
"Part highlighting (Ctrl + H)<br>Show a highlight effect on the selected "
"part<br>in the live view."
msgstr ""
#: src/bin/tools.c:201
msgid "Part Highlighting (Ctrl + H)"
msgstr "Подсветка примитивов (Ctrl + H)"
#: src/bin/tools.c:220
msgid ""
"Dummy parts (Ctrl + U)<br>Display virtual images for the swallow "
"and<br>spacer parts."
msgstr ""
#: src/bin/tools.c:208
msgid "Dummy Parts (Ctrl + W)"
msgstr "Изображение для контейнеров (Ctrl + W)"
#: src/bin/tools.c:231
msgid ""
"Wireframes (Ctrl + W)<br>Display wireframes to identify the "
"parts<br>boundaries."
msgstr ""
#: src/bin/tools.c:242
msgid ""
"Mirror mode (Ctrl + M)<br>Invert the layout horizontally and review<br>the "
"designed layout in RTL(right-to-left)<br>LTR(left-to-right) settings."
msgstr ""
#: src/bin/tools.c:280
msgid "Save the file (Ctrl + S)<br>Save the current script to a file."
msgstr ""
#: src/bin/tools.c:288
#: src/bin/tools.c:217
#, fuzzy
msgid "Undo text (Ctrl + Z)"
msgid "Mirror Mode (Ctrl + M)"
msgstr "Отменить (Ctrl + Z)"
#: src/bin/tools.c:295
#, fuzzy
msgid "Redo text (Ctrl + R)"
#: src/bin/tools.c:251
msgid "Save File (Ctrl + S)"
msgstr "Сохранить (Ctrl + S)"
#: src/bin/tools.c:257
msgid "Undo Text (Ctrl + Z)"
msgstr "Отменить (Ctrl + Z)"
#: src/bin/tools.c:263
msgid "Redo Text (Ctrl + R)"
msgstr "Повторить (Ctrl + R)"
#: src/bin/tools.c:302
#, fuzzy
msgid "Find/Replace (Ctrl + F)<br>Find or replace text."
#: src/bin/tools.c:269
msgid "Find/Replace (Ctrl + F)"
msgstr "Поиск/Замена (Ctrl + F)"
#: src/bin/tools.c:311
msgid ""
"Go to line (Ctrl + L)<br>Open the Go to window to move the cursor<br>line "
"position."
msgstr ""
#: src/bin/tools.c:276
msgid "Goto Lines (Ctrl + L)"
msgstr "Перейти к строке (Ctrl + L)"
#: src/bin/tools.c:321
msgid "Line numbers<br>Display the script line numbers."
msgstr ""
#: src/bin/tools.c:283
msgid "Line Numbers (F5)"
msgstr "Номера строк (F5)"
#: src/bin/tools.c:330
msgid ""
"Insert a code snippet (Ctrl + T)<br>Enventor chooses the best code with "
"regards<br>to the current editing context. For instance,<br>if the cursor is "
"inside a part section,<br>description code is generated."
msgstr ""
#: src/bin/tools.c:342
msgid ""
"Console box (Alt + Down)<br>Display the console box, which shows the "
"EDC<br>build logs, such as error messages. It pops<br>up automatically when "
"compliation errors occur."
msgstr ""
#: src/bin/tools.c:353
msgid ""
"File browser (F9)<br>Display the file browser, which shows a file list<br>in "
"current workspace."
msgstr ""
#: src/bin/tools.c:363
msgid ""
"EDC navigator (F10)<br>Display the EDC navigator, which shows the "
"current<br>group hierarchy tree that contains parts,<br>descriptions and "
"programs lists."
msgstr ""
#: src/bin/tools.c:375
msgid ""
"File tab (F11)<br>Display the file tab in the bottom area<br>It shows an "
"opened file list to switch<br>files quickly. to switch files quickly."
msgstr ""
#: src/bin/tools.c:386
msgid "Enventor menu (Esc)<br>Open the Enventor main menu."
msgstr ""
#: src/bin/tools.c:432
#: src/bin/tools.c:291
#, fuzzy
msgid "Part highlighting enabled."
msgid "Insert Template (Ctrl + T)"
msgstr "Поиск/Замена (Ctrl + F)"
#: src/bin/tools.c:298
msgid "Console Box (Alt + Down)"
msgstr "Показать/Скрыть консоль (Alt + Down)"
#: src/bin/tools.c:305
msgid "File Browser (F9)"
msgstr ""
#: src/bin/tools.c:312
msgid "EDC Navigator (F10)"
msgstr ""
#: src/bin/tools.c:319
msgid "Status (F11)"
msgstr "Строка статуса (F11)"
#: src/bin/tools.c:326
msgid "Enventor Menu (Esc)"
msgstr "Меню (Esc)"
#: src/bin/tools.c:371
msgid "Part Highlighting Enabled."
msgstr "Подсветка примитивов Включена"
#: src/bin/tools.c:434
#, fuzzy
msgid "Part highlighting disabled."
#: src/bin/tools.c:373
msgid "Part Highlighting Disabled."
msgstr "Подсветка примитивов Выключена"
#: src/bin/tools.c:519
#, fuzzy
msgid "Dummy parts enabled."
#: src/bin/tools.c:458
msgid "Dummy Parts Enabled."
msgstr "Изображение для контейнеров Включено"
#: src/bin/tools.c:521
#, fuzzy
msgid "Dummy parts disabled."
#: src/bin/tools.c:460
msgid "Dummy Parts Disabled."
msgstr "Изображения для контейнеров Выключено"
#: src/bin/tools.c:543
msgid "Wireframes enabled."
#: src/bin/tools.c:483
msgid "Mirror Mode Enabled."
msgstr ""
#: src/bin/tools.c:545
#: src/bin/tools.c:485
#, fuzzy
msgid "Wireframes disabled."
msgid "Mirror Mode Disabled."
msgstr "Автодополнение Выключенно"
#: src/bin/tools.c:568
#, fuzzy
msgid "Mirror mode enabled."
msgstr "Автодополнение Выключенно"
#: src/bin/tools.c:570
#, fuzzy
msgid "Mirror mode disabled."
msgstr "Автодополнение Выключенно"
#: src/bin/tools.c:624
#: src/bin/tools.c:539
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr "Невозможно вставить шаблон, пока активен режим Live Edit"
#: src/bin/tools.c:635
#: src/bin/tools.c:548
#, c-format
msgid "Template code inserted, (%s)"
msgstr "Шаблон вставлен, (%s)"
#: src/bin/tools.c:641
#: src/bin/tools.c:554
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."
@ -512,62 +420,6 @@ msgstr ""
"Невозможно втавить шаблон в это место. Переместите курсор внутрь одного из "
"блоков: \"Collections, Images,Parts,Part,Programs\""
#~ msgid "Auto Completion Enabled."
#~ msgstr "Автодополнение Включено."
#~ msgid "Auto Completion Disabled."
#~ msgstr "Автодополнение Выключенно"
#~ msgid "Auto Indentation Enabled."
#~ msgstr "Автовыравнивание Включено"
#~ msgid "Auto Indentation Disabled."
#~ msgstr "Автовыравнивание Выключено"
#~ msgid "Without save, you will lose last changes!"
#~ msgstr "Без сохранения все изменения будут утеряны!"
#~ msgid "Backward"
#~ msgstr "Назад"
#~ msgid "Forward"
#~ msgstr "Вперед"
#~ msgid "Font Size "
#~ msgstr "Размер шрифта "
#~ msgid "Part Highlighting (Ctrl + H)"
#~ msgstr "Подсветка примитивов (Ctrl + H)"
#~ msgid "Dummy Parts (Ctrl + W)"
#~ msgstr "Изображение для контейнеров (Ctrl + W)"
#, fuzzy
#~ msgid "Mirror Mode (Ctrl + M)"
#~ msgstr "Отменить (Ctrl + Z)"
#~ msgid "Save File (Ctrl + S)"
#~ msgstr "Сохранить (Ctrl + S)"
#~ msgid "Goto Lines (Ctrl + L)"
#~ msgstr "Перейти к строке (Ctrl + L)"
#~ msgid "Line Numbers (F5)"
#~ msgstr "Номера строк (F5)"
#, fuzzy
#~ msgid "Insert Template (Ctrl + T)"
#~ msgstr "Поиск/Замена (Ctrl + F)"
#~ msgid "Console Box (Alt + Down)"
#~ msgstr "Показать/Скрыть консоль (Alt + Down)"
#~ msgid "Status (F11)"
#~ msgstr "Строка статуса (F11)"
#~ msgid "Enventor Menu (Esc)"
#~ msgstr "Меню (Esc)"
#~ msgid "Double click the part to confirm."
#~ msgstr "Сделайте двойной клик мыши по примитиву для вставки."

423
po/sl.po
View File

@ -1,423 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Enventor development team
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: enventor 0.9.0\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2016-09-19 14:56+0200\n"
"PO-Revision-Date: 2016-09-21 17:09+0200\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.9\n"
"Last-Translator: Renato Rener <renato.rener@gmail.com>\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 "
"|| n%100==4 ? 2 : 3);\n"
"Language: sl_SI\n"
#: src/bin/base_gui.c:67
#, c-format
msgid "%s - Enventor"
msgstr "%s - Enventor"
#: src/bin/config_data.c:72
msgid "Failed to generate tmp folder!"
msgstr "Neuspeh pri ustvarjanju začasne mape!"
#: src/bin/config_data.c:91 src/bin/config_data.c:104
#, c-format
msgid "Cannot create a config folder \"%s\""
msgstr "Ne morem ustvariti nastavitvene mape \"%s\""
#: src/bin/config_data.c:115
#, c-format
msgid "Cannot save a config file \"%s\""
msgstr "Ne morem shraniti nastavitvene datoteke \"%s\""
#: src/bin/config_data.c:157
#, c-format
msgid "Cannot load a config file \"%s\""
msgstr "Ne morem naložiti nastavitvene datoteke \"%s\""
#: src/bin/config_data.c:165 src/bin/file_mgr.c:193 src/bin/goto.c:136
#: src/bin/menu.c:613 src/bin/newfile.c:144 src/bin/panes.c:321
#: src/bin/search.c:337 src/bin/setting.c:187 src/bin/statusbar.c:312
#: src/bin/text_setting.c:405 src/bin/text_setting.c:456
#: src/bin/text_setting.c:487 src/bin/text_setting.c:956 src/bin/tools.c:186
msgid "Failed to allocate Memory!"
msgstr "Dodeljevanje spomina spodletelo!"
#: src/bin/file_mgr.c:71
msgid "EDC has been changed on the file system."
msgstr "EDC je bil spremenjen na datotečnem sistemu."
#: src/bin/file_mgr.c:73
msgid "Do you want to replace the contents?"
msgstr "Ali želite zamenjati vsebino?"
#: src/bin/file_mgr.c:84
msgid "Save As"
msgstr "Shrani kot"
#: src/bin/file_mgr.c:92 src/bin/search.c:407
msgid "Replace"
msgstr "Zamenjaj"
#: src/bin/file_mgr.c:98
msgid "Ignore"
msgstr "Spreglej"
#: src/bin/file_mgr.c:157
#, c-format
msgid "File saved. \"%s\""
msgstr "Datoteka shranjena. \"%s\""
#: src/bin/file_mgr.c:159
#, c-format
msgid "Already saved. \"%s\""
msgstr "Že shranjeno. \"%s\""
#: src/bin/goto.c:93
msgid "Invalid line number"
msgstr "Napačno število vrstice"
#: src/bin/goto.c:142
msgid "Enventor Goto Line"
msgstr "Enventor Skoči na vrstico"
#: src/bin/goto.c:146
msgid "Go to Line"
msgstr "Skoči na vrstico"
#: src/bin/goto.c:168
#, c-format
msgid "Enter line number [1..%d]:"
msgstr "Vnesi vrstico številka [1..%d]:"
#: src/bin/goto.c:192 src/bin/menu.c:150
msgid "Ok"
msgstr "V Redu"
#: src/bin/goto.c:204 src/bin/search.c:429
msgid "Failed to grab key - Escape"
msgstr "Zajetje tipke Esc spodletelo"
#: src/bin/live_edit.c:1983 src/bin/live_edit.c:2028 src/bin/live_edit.c:2030
#: src/bin/main.c:851 src/lib/auto_comp.c:369 src/lib/ctxpopup.c:766
#, c-format
msgid "Failed to grab key - %s"
msgstr "Zajetje znaka spodletelo - %s"
#: src/bin/live_edit.c:2091
msgid ""
"Double click part to confirm. (Esc = cancel, Direction Key = move item per "
"pixel, Ctrl = disable auto-aligning)"
msgstr ""
"Dvoklikni del za potrditev. (Esc = preklic, Smerna tipka = premikanje en "
"predmet na piksel, Ctrl = onemogoči samodejno poravnavo)"
#: src/bin/live_edit.c:2247
msgid "Faild to allocate Memory!"
msgstr "Dodeljevanje spomina spodletelo!"
#: src/bin/main.c:24
msgid "Auto Completion Enabled."
msgstr "Samodokončanje omogočeno."
#: src/bin/main.c:25
msgid "Auto Completion Disabled."
msgstr "Samodokončanje onemogočeno."
#: src/bin/main.c:34
msgid "Auto Indentation Enabled."
msgstr "Samozamik omogočen."
#: src/bin/main.c:35
msgid "Auto Indentation Disabled."
msgstr "Samozamik onemogočen."
#: src/bin/main.c:207
#, c-format
msgid "Font Size: %1.1fx"
msgstr "Velikost pisave: %1.1fx"
#: src/bin/menu.c:137
msgid "New File: Choose a template"
msgstr "Nova datoteka: izberi predlogo"
#: src/bin/menu.c:156 src/bin/menu.c:202 src/bin/setting.c:245
msgid "Cancel"
msgstr "Prekliči"
#: src/bin/menu.c:175
msgid "Without save, you will lose last changes!"
msgstr "Brez shranitve boste izgubili zadnje spremembe!"
#: src/bin/menu.c:177
msgid "Will you save changes?"
msgstr "Ali boste shranili spremembe?"
#: src/bin/menu.c:188 src/bin/menu.c:466 src/bin/menu.c:582
msgid "Save"
msgstr "Shrani"
#: src/bin/menu.c:196
msgid "Discard"
msgstr "Zavrži"
#: src/bin/menu.c:324
msgid "Choose a file to save"
msgstr "Izberite datoteko za shranjevanje"
#: src/bin/menu.c:351
#, c-format
msgid "Failed to save: %s."
msgstr "Neuspeh pri shranjevanju: %s."
#: src/bin/menu.c:406
msgid "Support only .edc file."
msgstr "Podpora le za .edc datoteke."
#: src/bin/menu.c:416
msgid "Choose a file to load."
msgstr "Izberite datoteko za naložitev."
#: src/bin/menu.c:427
#, c-format
msgid "Failed to load: %s."
msgstr "Neuspeh pri nalaganju: %s."
#: src/bin/menu.c:458
msgid "Save File: Choose a EDC"
msgstr "Shrani datoteko: Izberi EDC"
#: src/bin/menu.c:467 src/bin/menu.c:502
msgid "Close"
msgstr "Zapri"
#: src/bin/menu.c:492
msgid "Load File: Choose a EDC"
msgstr "Naloži datoteko : Izberi EDC"
#: src/bin/menu.c:501 src/bin/menu.c:586
msgid "Load"
msgstr "Naloži"
#: src/bin/menu.c:577
msgid "New"
msgstr "Nov"
#: src/bin/menu.c:590 src/bin/setting.c:201
msgid "Settings"
msgstr "Nastavitve"
#: src/bin/menu.c:594
msgid "Help"
msgstr "Pomoč"
#: src/bin/menu.c:598
msgid "Exit"
msgstr "Izhod"
#: src/bin/newfile.c:57 src/bin/newfile.c:82
#, c-format
msgid "Cannot find file! \"%s\""
msgstr "Ne najdem datoteke! \"%s\""
#: src/bin/newfile.c:128
#, c-format
msgid "Cannot find templates folder! \"%s\""
msgstr "Ne najdem mape predlog! \"%s\""
#: src/bin/search.c:82
#, c-format
msgid "%d matches replaced"
msgstr "%d zadetki zamenjani"
#: src/bin/search.c:132 src/bin/search.c:194
#, c-format
msgid "No \"%s\" in the text"
msgstr "Ni \"%s\" v besedilu"
#: src/bin/search.c:233 src/bin/search.c:399
msgid "Backward"
msgstr "Nazaj"
#: src/bin/search.c:265 src/bin/search.c:392
msgid "Forward"
msgstr "Naprej"
#: src/bin/search.c:343
msgid "Enventor Search"
msgstr "Enventor Iskanje"
#: src/bin/search.c:346
msgid "Find/Replace"
msgstr "Najdi/Zamenjaj"
#: src/bin/search.c:414
msgid "Replace All"
msgstr "Zamenjaj vse"
#: src/bin/setting.c:213
msgid "Preferences"
msgstr "Prednostne nastavitve"
#: src/bin/setting.c:215
msgid "Text Editor"
msgstr "Urejevalnik besedil"
#: src/bin/setting.c:217
msgid "EDC Build"
msgstr "EDC izgradnja"
#: src/bin/setting.c:231
msgid "Apply"
msgstr "Uveljavi"
#: src/bin/setting.c:238
msgid "Reset"
msgstr "Obnovi"
#: src/bin/text_setting.c:438
#, c-format
msgid "Failed to open file \"%s\""
msgstr "Neuspeh pri odpiranju datoteke \"%s\""
#: src/bin/text_setting.c:759
msgid "Double click a keyword to change its color :"
msgstr "Dvoklikni ključno besedo za spremembo njene barve :"
#: src/bin/text_setting.c:796
msgid "Font Size "
msgstr "Velikost pisave:"
#: src/bin/text_setting.c:829
msgid "Font Name"
msgstr "Ime pisave"
#: src/bin/text_setting.c:856
msgid "Font Style"
msgstr "Slog pisave:"
#: src/bin/tools.c:134
msgid "Redo text."
msgstr "Ponovno uveljavi besedilo."
#: src/bin/tools.c:136
msgid "No text to be redo."
msgstr "Ni besedila za ponovno uveljavitev."
#: src/bin/tools.c:144
msgid "Undo text."
msgstr "Razveljavi besedilo."
#: src/bin/tools.c:146
msgid "No text to be undo."
msgstr "Ni besedila za razveljavitev."
#: src/bin/tools.c:201
msgid "Part Highlighting (Ctrl + H)"
msgstr "Poudarjanje dela (Ctrl + H)"
#: src/bin/tools.c:208
msgid "Dummy Parts (Ctrl + W)"
msgstr "Butasti deli (Ctrl + W)"
#: src/bin/tools.c:217
msgid "Mirror Mode (Ctrl + M)"
msgstr "Način ogledala (Ctrl + M)"
#: src/bin/tools.c:251
msgid "Save File (Ctrl + S)"
msgstr "Shrani datoteko (Ctrl + S)"
#: src/bin/tools.c:257
msgid "Undo Text (Ctrl + Z)"
msgstr "Razveljavi besedilo (Ctrl + Z)"
#: src/bin/tools.c:263
msgid "Redo Text (Ctrl + R)"
msgstr "Ponovno uveljavi besedilo (Ctrl + R)"
#: src/bin/tools.c:269
msgid "Find/Replace (Ctrl + F)"
msgstr "Najdi/Zamenjaj (Ctrl + F)"
#: src/bin/tools.c:276
msgid "Goto Lines (Ctrl + L)"
msgstr "Pojdi na vrstice (Ctrl + L)"
#: src/bin/tools.c:283
msgid "Line Numbers (F5)"
msgstr "Številke vrstic (F5)"
#: src/bin/tools.c:291
msgid "Insert Template (Ctrl + T)"
msgstr "Vstavi predlogo (Ctrl + T)"
#: src/bin/tools.c:298
msgid "Console Box (Alt + Down)"
msgstr "Konzolna škatla (Alt + Down)"
#: src/bin/tools.c:305
msgid "File Browser (F9)"
msgstr "Brskalnik datotek (F9)"
#: src/bin/tools.c:312
msgid "EDC Navigator (F10)"
msgstr "EDC Navigator (F10)"
#: src/bin/tools.c:319
msgid "Status (F11)"
msgstr "Stanje (F11)"
#: src/bin/tools.c:326
msgid "Enventor Menu (Esc)"
msgstr "Enventor Meni (Esc)"
#: src/bin/tools.c:371
msgid "Part Highlighting Enabled."
msgstr "Omogočeno poudarjanje delov."
#: src/bin/tools.c:373
msgid "Part Highlighting Disabled."
msgstr "Onemogočeno poudarjanje delov."
#: src/bin/tools.c:458
msgid "Dummy Parts Enabled."
msgstr "Omogočeni butasti deli."
#: src/bin/tools.c:460
msgid "Dummy Parts Disabled."
msgstr "Onemogočeni butasti deli."
#: src/bin/tools.c:483
msgid "Mirror Mode Enabled."
msgstr "Omogočen način ogledala."
#: src/bin/tools.c:485
msgid "Mirror Mode Disabled."
msgstr "Onemogočen način ogledala."
#: src/bin/tools.c:539
msgid "Insertion of template code is disabled while in Live Edit mode"
msgstr ""
"Med načinom urejanja v živo, je vstavljanje kode predloge onemogočeno"
#: src/bin/tools.c:548
#, c-format
msgid "Template code inserted, (%s)"
msgstr "Vstavljena koda predloge, (%s)"
#: src/bin/tools.c:554
msgid ""
"Can't insert template code here. Move the cursor inside the \"Collections,"
"Images,Parts,Part,Programs\" scope."
msgstr ""
"Tukaj ne morem vstaviti kode predloge. Premaknite kurzor znotraj okvirja "
"\"Zbirke,Slike,Deli,Del,Programi\"."

View File

@ -105,20 +105,7 @@ base_file_tab_toggle(Eina_Bool toggle)
}
}
static void
file_browser_hide_done(void *data, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED,
const char *source EINA_UNUSED)
{
base_data *bd = data;
elm_object_signal_callback_del(bd->layout,
"elm,state,file_browser_hide,done", "",
file_browser_hide_done);
file_browser_hide();
}
void
base_file_browser_toggle(Eina_Bool toggle)
void base_file_browser_toggle(Eina_Bool toggle)
{
base_data *bd = g_bd;
EINA_SAFETY_ON_NULL_RETURN(bd);
@ -126,38 +113,17 @@ base_file_browser_toggle(Eina_Bool toggle)
if (toggle) config_file_browser_set(!config_file_browser_get());
if (config_file_browser_get())
{
elm_object_signal_emit(bd->layout, "elm,state,file_browser,show", "");
file_browser_show();
}
elm_object_signal_emit(bd->layout, "elm,state,file_browser,show", "");
else
{
elm_object_signal_callback_add(bd->layout,
"elm,state,file_browser_hide,done", "",
file_browser_hide_done, bd);
elm_object_signal_emit(bd->layout, "elm,state,file_browser,hide", "");
}
elm_object_signal_emit(bd->layout, "elm,state,file_browser,hide", "");
}
void
base_edc_navigator_deselect(void)
void base_edc_navigator_deselect(void)
{
if (config_edc_navigator_get())
edc_navigator_deselect();
}
static void
edc_navigator_hide_done(void *data, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED,
const char *source EINA_UNUSED)
{
base_data *bd = data;
elm_object_signal_callback_del(bd->layout,
"elm,state,edc_navigator_hide,done", "",
edc_navigator_hide_done);
edc_navigator_hide();
}
void base_edc_navigator_toggle(Eina_Bool toggle)
{
base_data *bd = g_bd;
@ -169,13 +135,9 @@ void base_edc_navigator_toggle(Eina_Bool toggle)
{
base_edc_navigator_group_update();
elm_object_signal_emit(bd->layout, "elm,state,edc_navigator,show", "");
edc_navigator_show();
}
else
{
elm_object_signal_callback_add(bd->layout,
"elm,state,edc_navigator_hide,done", "",
edc_navigator_hide_done, bd);
elm_object_signal_emit(bd->layout, "elm,state,edc_navigator,hide", "");
edc_navigator_deselect();
}

View File

@ -23,8 +23,6 @@ typedef struct config_s
float font_scale;
double editor_size;
double console_size;
double file_browser_size;
double edc_navigator_size;
void (*update_cb)(void *data);
void *update_cb_data;
@ -186,8 +184,6 @@ config_load(void)
cd->win_size_h = WIN_DEFAULT_H;
cd->editor_size = DEFAULT_EDITOR_SIZE;
cd->console_size = DEFAULT_CONSOLE_SIZE;
cd->file_browser_size = DEFAULT_FILE_BROWSER_SIZE;
cd->edc_navigator_size = DEFAULT_EDC_NAVIGATOR_SIZE;
cd->stats_bar = EINA_TRUE;
cd->linenumber = EINA_TRUE;
cd->part_highlight = EINA_TRUE;
@ -291,10 +287,6 @@ eddc_init(void)
editor_size, EET_T_DOUBLE);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "console_size",
console_size, EET_T_DOUBLE);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "file_browser_size",
file_browser_size, EET_T_DOUBLE);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "edc_navigator_size",
edc_navigator_size, EET_T_DOUBLE);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "view_size_w",
view_size_w, EET_T_INT);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "view_size_h",
@ -1068,24 +1060,6 @@ config_file_browser_get(void)
return cd->file_browser;
}
void
config_file_browser_size_set(double size)
{
config_data *cd = g_cd;
EINA_SAFETY_ON_NULL_RETURN(cd);
cd->file_browser_size = size;
}
double
config_file_browser_size_get(void)
{
config_data *cd = g_cd;
EINA_SAFETY_ON_NULL_RETURN_VAL(cd, 0.0);
return cd->file_browser_size;
}
void
config_edc_navigator_set(Eina_Bool enabled)
{
@ -1103,21 +1077,3 @@ config_edc_navigator_get(void)
return cd->edc_navigator;
}
void
config_edc_navigator_size_set(double size)
{
config_data *cd = g_cd;
EINA_SAFETY_ON_NULL_RETURN(cd);
cd->edc_navigator_size = size;
}
double
config_edc_navigator_size_get(void)
{
config_data *cd = g_cd;
EINA_SAFETY_ON_NULL_RETURN_VAL(cd, 0.0);
return cd->edc_navigator_size;
}

View File

@ -25,8 +25,6 @@ error_word_select(Evas_Object *console)
return;
}
if (elm_entry_is_empty(console)) return;
//Convert console text including markup text to the plain text
const char *markup_text = elm_entry_entry_get(console);
if (!markup_text) return;
@ -81,12 +79,6 @@ end:
static void
set_console_error_msg(Evas_Object *console, const char *src)
{
if (!src || !strcmp(src, ""))
{
elm_entry_entry_set(console, NULL);
return;
}
/* We cut error messages since it contains unnecessary information.
Most of the time, first one line has a practical information. */
const char *new_line = "<br/>";

View File

@ -120,7 +120,6 @@ static const char *IMAGE_TYPE_STR = "image";
static const char *SWALLOW_TYPE_STR = "swallow";
static const char *TEXTBLOCK_TYPE_STR = "textblock";
static const char *SPACER_TYPE_STR = "spacer";
static const char *VECTOR_TYPE_STR = "vector";
static const char *PART_TYPE_STR = "part";
static void group_contract(group_it *git);
@ -276,8 +275,6 @@ part_type_get(part_it *pit)
return TEXTBLOCK_TYPE_STR;
case EDJE_PART_TYPE_SPACER:
return SPACER_TYPE_STR;
case EDJE_PART_TYPE_VECTOR:
return VECTOR_TYPE_STR;
default:
return PART_TYPE_STR;
}
@ -733,7 +730,7 @@ states_update(navi_data *nd, part_it *pit)
sit->tag.idx = idx;
//Parsing "default" "0.00". We don't take care 0.00 in the state name.
const char *brk = strpbrk(name, " ");
if (brk) sit->name = eina_strndup(name, brk - name);
if (brk) sit->name = strndup(name, brk - name);
else sit->name = strdup(name);
sit->pit = pit;
@ -937,7 +934,7 @@ programs_update(navi_data *nd, group_it *git)
Enventor_Object *enventor = base_enventor_get();
Eina_List *program_list = enventor_object_programs_list_get(enventor);
//oh, no programs..
//oh, no programs..
if (!program_list)
{
navigator_programs_clear(git);
@ -1119,9 +1116,6 @@ gl_part_content_get_cb(void *data, Evas_Object *obj, const char *part)
case EDJE_PART_TYPE_SPACER:
group = "navi_spacer";
break;
case EDJE_PART_TYPE_VECTOR:
group = "navi_vector";
break;
default:
group = "navi_unknown";
break;
@ -1351,44 +1345,6 @@ gl_contract_request_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
}
}
static void
dragable_bar_mouse_up_cb(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
Evas_Object *main_layout = data;
if (!main_layout) return;
double w;
edje_object_part_drag_value_get
(elm_layout_edje_get(main_layout), "elm.bar.right", &w, NULL);
if (w > 0.99)
{
config_edc_navigator_set(EINA_FALSE);
tools_edc_navigator_update(EINA_FALSE);
config_edc_navigator_size_set(0.0);
}
else
config_edc_navigator_size_set(w);
}
static void
dragable_bar_mouse_down_cb(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
Evas_Object *main_layout = data;
if (!main_layout) return;
double w;
edje_object_part_drag_value_get
(elm_layout_edje_get(main_layout), "elm.bar.right", &w, NULL);
if (w > 0.99)
{
config_edc_navigator_set(EINA_TRUE);
tools_edc_navigator_update(EINA_FALSE);
}
}
/*****************************************************************************/
/* Externally accessible calls */
/*****************************************************************************/
@ -1410,7 +1366,7 @@ edc_navigator_group_update(const char *cur_group)
//FIXME: This function is unnecessarily called... why?
//Cancel item selection if group was not indicated.
//Cancel item selection if group was not indicated.
if (!cur_group) navigator_item_deselect(nd);
Eina_List *group_list =
enventor_item_group_list_get(file_mgr_focused_item_get());
@ -1574,21 +1530,9 @@ edc_navigator_init(Evas_Object *parent)
nd->program_itc = itc;
//Dragable Bar
Evas_Object *bar = evas_object_rectangle_add(evas_object_evas_get(parent));
evas_object_color_set(bar, 0, 0, 0, 0);
evas_object_event_callback_add(bar, EVAS_CALLBACK_MOUSE_DOWN,
dragable_bar_mouse_down_cb, parent);
evas_object_event_callback_add(bar, EVAS_CALLBACK_MOUSE_UP,
dragable_bar_mouse_up_cb, parent);
elm_object_part_content_set(parent, "bar_right", bar);
nd->base_layout = base_layout;
nd->genlist = genlist;
if (config_edc_navigator_get())
config_edc_navigator_size_set(config_edc_navigator_size_get());
return base_layout;
}
@ -1635,28 +1579,3 @@ edc_navigator_tools_visible_set(Eina_Bool visible)
else
elm_object_signal_emit(nd->base_layout, "elm,state,tools,hide", "");
}
void
edc_navigator_show()
{
navi_data *nd = g_nd;
if (!nd) return;
Evas_Object *main_layout = evas_object_smart_parent_get(nd->base_layout);
if (!main_layout) return;
double w = config_edc_navigator_size_get();
edje_object_part_drag_value_set(main_layout, "elm.bar.right", w, 0.0);
}
void
edc_navigator_hide()
{
navi_data *nd = g_nd;
if (!nd) return;
Evas_Object *main_layout = evas_object_smart_parent_get(nd->base_layout);
if (!main_layout) return;
edje_object_part_drag_value_set(main_layout, "elm.bar.right", 1.0, 0.0);
}

View File

@ -624,44 +624,6 @@ show_all_check_changed_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
}
}
static void
dragable_bar_mouse_up_cb(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
Evas_Object *main_layout = data;
if (!main_layout) return;
double w;
edje_object_part_drag_value_get
(elm_layout_edje_get(main_layout), "elm.bar.left", &w, NULL);
if (w < 0.01)
{
config_file_browser_set(EINA_FALSE);
tools_file_browser_update(EINA_FALSE);
config_file_browser_size_set(0.0);
}
else
config_file_browser_size_set(w);
}
static void
dragable_bar_mouse_down_cb(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
Evas_Object *main_layout = data;
if (!main_layout) return;
double w;
edje_object_part_drag_value_get
(elm_layout_edje_get(main_layout), "elm.bar.left", &w, NULL);
if (w < 0.01)
{
config_file_browser_set(EINA_TRUE);
tools_file_browser_update(EINA_FALSE);
}
}
/*****************************************************************************/
/* Externally accessible calls */
/*****************************************************************************/
@ -810,23 +772,11 @@ file_browser_init(Evas_Object *parent)
search_itc->func.content_get = gl_search_content_get_cb;
bd->search_itc = search_itc;
//Dragable Bar
Evas_Object *bar = evas_object_rectangle_add(evas_object_evas_get(parent));
evas_object_color_set(bar, 0, 0, 0, 0);
evas_object_event_callback_add(bar, EVAS_CALLBACK_MOUSE_DOWN,
dragable_bar_mouse_down_cb, parent);
evas_object_event_callback_add(bar, EVAS_CALLBACK_MOUSE_UP,
dragable_bar_mouse_up_cb, parent);
elm_object_part_content_set(parent, "bar_left", bar);
bd->base_layout = base_layout;
bd->search_entry = search_entry;
bd->genlist = genlist;
bd->show_all_check = show_all_check;
if (config_file_browser_get())
config_file_browser_size_set(config_file_browser_size_get());
elm_object_disabled_set(base_layout, EINA_TRUE);
return base_layout;
@ -973,28 +923,3 @@ file_browser_selected_file_main_set(void)
config_input_path_set(file->path);
elm_genlist_realized_items_update(bd->genlist);
}
void
file_browser_show()
{
brows_data *bd = g_bd;
if (!bd) return;
Evas_Object *main_layout = evas_object_smart_parent_get(bd->base_layout);
if (!main_layout) return;
double w = config_file_browser_size_get();
edje_object_part_drag_value_set(main_layout, "elm.bar.left", w, 0.0);
}
void
file_browser_hide()
{
brows_data *bd = g_bd;
if (!bd) return;
Evas_Object *main_layout = evas_object_smart_parent_get(bd->base_layout);
if (!main_layout) return;
edje_object_part_drag_value_set(main_layout, "elm.bar.left", 0.0, 0.0);
}

View File

@ -140,7 +140,7 @@ enventor_edc_modified_cb(void *data, Evas_Object *obj EINA_UNUSED,
fmd->edc_modified = EINA_TRUE;
/* FIXME: Here ignore edc changes, if any menu is closed,
/* FIXME: Here ignore edc changes, if any menu is closed,
then we need to open warning box. */
if (menu_activated_get()) return;
@ -269,6 +269,7 @@ file_mgr_file_del(Enventor_Item *it)
fmd->focused_it = NULL;
file_tab_it_remove(it);
enventor_item_del(it);
}
Enventor_Item *
@ -320,7 +321,7 @@ file_mgr_main_file_set(const char *path)
if (!path2) continue;
if (strcmp(realpath, path2)) continue;
file_mgr_file_del(it);
if (!fmd->focused_it)
if (fmd->focused_it == it)
replace_focus = EINA_TRUE;
break;
}
@ -332,18 +333,12 @@ file_mgr_main_file_set(const char *path)
const char *prev_path = enventor_item_file_get(main_it);
if (prev_path)
{
//Replace the current main file if it is not the new main file.
if (strcmp(realpath, prev_path))
{
Enventor_Item *it2 = file_mgr_sub_file_add(prev_path,
EINA_FALSE);
if (fmd->focused_it == main_it)
fmd->focused_it = it2;
}
else
replace_focus = EINA_TRUE;
const char *file_path = NULL;
file_path = enventor_item_file_get(main_it);
Enventor_Item *it2 = file_mgr_sub_file_add(file_path, EINA_FALSE);
file_mgr_file_del(main_it);
if (fmd->focused_it == main_it)
fmd->focused_it = it2;
}
}

View File

@ -58,7 +58,6 @@ list_item_anim_cb(void *data)
{
file_tab_it *fti = data;
elm_list_item_bring_in(fti->it);
file_mgr_file_focus(fti->enventor_it);
fti->animator = NULL;
@ -87,7 +86,7 @@ list_item_selected_cb(void *data, Evas_Object *obj EINA_UNUSED,
}
static void
file_tab_it_remove_internal(file_tab_it *fti)
file_tab_it_del(file_tab_it *fti)
{
Evas_Object *list = elm_object_item_widget_get(fti->it);
@ -124,7 +123,8 @@ close_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
file_tab_it *fti = data;
file_mgr_file_del(fti->enventor_it);
file_tab_it_del(fti);
}
/*****************************************************************************/
@ -145,7 +145,7 @@ file_tab_it_remove(Enventor_Item *enventor_it)
file_tab_it *fti = elm_object_item_data_get(it);
if (fti->enventor_it == enventor_it)
{
file_tab_it_remove_internal(fti);
elm_object_item_del(it);
break;
}
}
@ -167,7 +167,6 @@ file_tab_it_select(Enventor_Item *enventor_it)
if (fti->enventor_it != enventor_it) continue;
fd->selected_it = it;
elm_list_item_selected_set(it, EINA_TRUE);
elm_list_item_bring_in(it);
return EINA_TRUE;
}
@ -247,12 +246,8 @@ file_tab_it_add(Enventor_Item *enventor_it)
elm_list_go(fd->list);
elm_list_item_bring_in(fti->it);
evas_object_smart_callback_add(btn, "clicked", close_btn_clicked_cb, fti);
free(filename);
return EINA_TRUE;
err:

View File

@ -358,8 +358,7 @@ live_edit_symbol_set(live_data *ld)
Evas_Object *layout_symbol = elm_layout_add(ld->layout);
elm_layout_file_set(layout_symbol, EDJE_PATH, buf);
elm_object_scale_set(layout_symbol,
(1/enventor_object_base_scale_get(base_enventor_get())) *
enventor_object_live_view_scale_get(base_enventor_get()));
enventor_object_live_view_scale_get(base_enventor_get()));
elm_object_part_content_set(ld->layout, "elm.swallow.symbol", layout_symbol);
}
@ -397,7 +396,7 @@ calc_relative_info(live_data *ld)
ld->rel_to_info.align_x = 0.0;
ld->rel_to_info.rel2_x = ld->rel_to_info.rel1_x;
free(ld->rel_to_info.rel2_x_part);
ld->rel_to_info.rel2_x_part = eina_strndup(ld->rel_to_info.rel1_x_part,
ld->rel_to_info.rel2_x_part = strndup(ld->rel_to_info.rel1_x_part,
strlen(ld->rel_to_info.rel1_x_part));
}
else if (ld->rel_to_info.rel2_x_part)
@ -405,7 +404,7 @@ calc_relative_info(live_data *ld)
ld->rel_to_info.align_x = 1.0;
ld->rel_to_info.rel1_x = ld->rel_to_info.rel2_x;
free(ld->rel_to_info.rel1_x_part);
ld->rel_to_info.rel1_x_part = eina_strndup(ld->rel_to_info.rel2_x_part,
ld->rel_to_info.rel1_x_part = strndup(ld->rel_to_info.rel2_x_part,
strlen(ld->rel_to_info.rel2_x_part));
}
else
@ -433,7 +432,7 @@ calc_relative_info(live_data *ld)
ld->rel_to_info.align_y = 0.0;
ld->rel_to_info.rel2_y = ld->rel_to_info.rel1_y;
free(ld->rel_to_info.rel2_y_part);
ld->rel_to_info.rel2_y_part = eina_strndup(ld->rel_to_info.rel1_y_part,
ld->rel_to_info.rel2_y_part = strndup(ld->rel_to_info.rel1_y_part,
strlen(ld->rel_to_info.rel1_y_part));
}
else if (ld->rel_to_info.rel2_y_part)
@ -441,7 +440,7 @@ calc_relative_info(live_data *ld)
ld->rel_to_info.align_y = 1.0;
ld->rel_to_info.rel1_y = ld->rel_to_info.rel2_y;
free(ld->rel_to_info.rel1_y_part);
ld->rel_to_info.rel1_y_part = eina_strndup(ld->rel_to_info.rel2_y_part,
ld->rel_to_info.rel1_y_part = strndup(ld->rel_to_info.rel2_y_part,
strlen(ld->rel_to_info.rel2_y_part));
}
else
@ -525,7 +524,7 @@ keygrabber_key_up_cb(void *data, Evas *e EINA_UNUSED,
ld->ctrl_pressed = EINA_FALSE;
}
static Evas_Coord_Point
Evas_Coord_Point
calc_ctrl_pt_auto_align_pos(live_data *ld, int cursor_x, int cursor_y,
int align_in, int *align_out)
{
@ -844,10 +843,10 @@ keygrabber_direction_key_down_cb(void *data, Evas *e EINA_UNUSED,
ld->rel_info.rel2_y += ld->rel_info.rel1_y - orig_rel1_y;
//Round off in the end to reduce round-off error.
ld->rel_info.rel1_x = ROUNDING(ld->rel_info.rel1_x, 4);
ld->rel_info.rel1_y = ROUNDING(ld->rel_info.rel1_y, 4);
ld->rel_info.rel2_x = ROUNDING(ld->rel_info.rel2_x, 4);
ld->rel_info.rel2_y = ROUNDING(ld->rel_info.rel2_y, 4);
ROUNDING(ld->rel_info.rel1_x, 4);
ROUNDING(ld->rel_info.rel1_y, 4);
ROUNDING(ld->rel_info.rel2_x, 4);
ROUNDING(ld->rel_info.rel2_y, 4);
ctrl_pt_update(ld);
info_text_update(ld);
@ -1249,7 +1248,7 @@ rel_to_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
(ld->last_cp == Ctrl_Pt_Left))
{
free(ld->rel_to_info.rel1_x_part);
ld->rel_to_info.rel1_x_part = eina_strndup(rel_data->part_name,
ld->rel_to_info.rel1_x_part = strndup(rel_data->part_name,
strlen(rel_data->part_name));
ld->rel_to_info.rel1_x = rel_data->rel_x;
}
@ -1259,7 +1258,7 @@ rel_to_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
(ld->last_cp == Ctrl_Pt_Right))
{
free(ld->rel_to_info.rel2_x_part);
ld->rel_to_info.rel2_x_part = eina_strndup(rel_data->part_name,
ld->rel_to_info.rel2_x_part = strndup(rel_data->part_name,
strlen(rel_data->part_name));
ld->rel_to_info.rel2_x = rel_data->rel_x;
}
@ -1284,7 +1283,7 @@ rel_to_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
(ld->last_cp == Ctrl_Pt_Top))
{
free(ld->rel_to_info.rel1_y_part);
ld->rel_to_info.rel1_y_part = eina_strndup(rel_data->part_name,
ld->rel_to_info.rel1_y_part = strndup(rel_data->part_name,
strlen(rel_data->part_name));
ld->rel_to_info.rel1_y = rel_data->rel_y;
}
@ -1294,7 +1293,7 @@ rel_to_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
(ld->last_cp == Ctrl_Pt_Bottom))
{
free(ld->rel_to_info.rel2_y_part);
ld->rel_to_info.rel2_y_part = eina_strndup(rel_data->part_name,
ld->rel_to_info.rel2_y_part = strndup(rel_data->part_name,
strlen(rel_data->part_name));
ld->rel_to_info.rel2_y = rel_data->rel_y;
}
@ -1894,10 +1893,10 @@ layout_mouse_move_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj,
ld->rel_info.rel2_y += ld->rel_info.rel1_y - orig_rel1_y;
//Round off in the end to reduce round-off error.
ld->rel_info.rel1_x = ROUNDING(ld->rel_info.rel1_x, 2);
ld->rel_info.rel1_y = ROUNDING(ld->rel_info.rel1_y, 2);
ld->rel_info.rel2_x = ROUNDING(ld->rel_info.rel2_x, 2);
ld->rel_info.rel2_y = ROUNDING(ld->rel_info.rel2_y, 2);
ROUNDING(ld->rel_info.rel1_x, 2);
ROUNDING(ld->rel_info.rel1_y, 2);
ROUNDING(ld->rel_info.rel2_x, 2);
ROUNDING(ld->rel_info.rel2_y, 2);
evas_object_move(obj, x, y);
@ -2341,6 +2340,106 @@ live_edit_tools_create(Evas_Object *parent)
return btn_list;
}
static void
fixed_w_check_changed_cb(void *data, Evas_Object *obj,
void *event_info EINA_UNUSED)
{
live_data *ld = data;
Evas_Coord x, y, w, h;
evas_object_geometry_get(ld->layout, &x, &y, &w, &h);
Evas_Coord vx, vw;
Evas_Object *view = view_obj_get(ld);
evas_object_geometry_get(view, &vx, NULL, &vw, NULL);
//Update width based on base scale.
double base_scale = enventor_object_base_scale_get(base_enventor_get());
Evas_Coord new_w;
if (elm_check_state_get(obj))
new_w = (Evas_Coord) round(w / base_scale); //Apply base scale.
else
new_w = (Evas_Coord) round(w * base_scale); //Revert applying base scale.
evas_object_resize(ld->layout, new_w, h);
//Update x position based on base scale.
double diff_w = (w - new_w) / 2.0;
Evas_Coord new_x = (Evas_Coord) round(x + diff_w);
//limit to live view boundary
if (vx > new_x) new_x = vx;
if ((new_x + new_w) > (vx + vw)) new_x = (vx + vw) - new_w;
evas_object_move(ld->layout, new_x, y);
//Update relative position values.
ld->rel_info.rel1_x += (diff_w / vw);
ld->rel_info.rel2_x -= (diff_w / vw);
//Round off in the end to reduce round-off error.
ld->rel_info.rel1_x = ROUNDING(ld->rel_info.rel1_x, 2);
ld->rel_info.rel2_x = ROUNDING(ld->rel_info.rel2_x, 2);
ctrl_pt_update(ld);
info_text_update(ld);
align_line_update(ld);
}
static void
fixed_h_check_changed_cb(void *data, Evas_Object *obj,
void *event_info EINA_UNUSED)
{
live_data *ld = data;
Evas_Coord x, y, w, h;
evas_object_geometry_get(ld->layout, &x, &y, &w, &h);
Evas_Coord vy, vh;
Evas_Object *view = view_obj_get(ld);
evas_object_geometry_get(view, NULL, &vy, NULL, &vh);
//Update height based on base scale.
double base_scale = enventor_object_base_scale_get(base_enventor_get());
Evas_Coord new_h;
if (elm_check_state_get(obj))
new_h = (Evas_Coord) round(h / base_scale); //Apply base scale.
else
new_h = (Evas_Coord) round(h * base_scale); //Revert applying base scale.
evas_object_resize(ld->layout, w, new_h);
//Update y position based on base scale.
double diff_h = (h - new_h) / 2.0;
Evas_Coord new_y = (Evas_Coord) round(y + diff_h);
//limit to live view boundary
if (vy > new_y) new_y = vy;
if ((new_y + new_h) > (vy + vh)) new_y = (vy + vh) - new_h;
evas_object_move(ld->layout, x, new_y);
//Update relative position values.
ld->rel_info.rel1_y += (diff_h / vh);
ld->rel_info.rel2_y -= (diff_h / vh);
//Round off in the end to reduce round-off error.
ld->rel_info.rel1_y = ROUNDING(ld->rel_info.rel1_y, 2);
ld->rel_info.rel2_y = ROUNDING(ld->rel_info.rel2_y, 2);
ctrl_pt_update(ld);
info_text_update(ld);
align_line_update(ld);
}
Evas_Object *
live_edit_init(Evas_Object *parent)
{
@ -2366,6 +2465,8 @@ live_edit_init(Evas_Object *parent)
"When you check Fixed width, width of a new<br>"
"part won't be resizable but it will stick a<br>"
"fixed size.");
evas_object_smart_callback_add(fixed_w_check, "changed",
fixed_w_check_changed_cb, ld);
evas_object_show(fixed_w_check);
elm_box_pack_end(fixed_box, fixed_w_check);
@ -2377,6 +2478,8 @@ live_edit_init(Evas_Object *parent)
"When you check Fixed height, height of a<br>"
"new part won't be resizable but it will<br>"
"stick a fixed size.");
evas_object_smart_callback_add(fixed_h_check, "changed",
fixed_h_check_changed_cb, ld);
evas_object_show(fixed_h_check);
elm_box_pack_end(fixed_box, fixed_h_check);

View File

@ -2,17 +2,12 @@
#include "config.h"
#endif
#ifdef ENABLE_NLS
# include <libintl.h>
#endif
#include <Ecore_Getopt.h>
#include <Eio.h>
#include "common.h"
#ifdef _WIN32
#include <Windows.h>
static HANDLE hMutex = NULL;
#include <signal.h>
#endif
typedef struct app_s
@ -259,7 +254,7 @@ args_dispatch(int argc, char **argv,
static const Ecore_Getopt optdesc = {
PACKAGE_NAME,
ENVENTOR_USAGE,
PACKAGE_VERSION,
VERSION,
ENVENTOR_COPYRIGHT,
ENVENTOR_LICENSE,
ENVENTOR_INFO,
@ -399,7 +394,7 @@ config_data_set(int argc, char **argv, Eina_Bool *default_edc,
}
static void
elm_setup(void)
elm_setup()
{
elm_need_efreet();
elm_config_profile_set("standard");
@ -635,7 +630,8 @@ enventor_setup(app_data *ad)
static Eina_Bool
alt_func(Evas_Event_Key_Down *event)
{
if (!evas_key_modifier_is_set(event->modifiers, "Alt"))
if (evas_key_modifier_is_set(event->modifiers, "Shift") ||
evas_key_modifier_is_set(event->modifiers, "Ctrl"))
return EINA_FALSE;
//Full Edit View
@ -669,7 +665,8 @@ alt_func(Evas_Event_Key_Down *event)
static Eina_Bool
ctrl_func(Evas_Event_Key_Down *event)
{
if (!evas_key_modifier_is_set(event->modifiers, "Control"))
if (evas_key_modifier_is_set(event->modifiers, "Shift") ||
evas_key_modifier_is_set(event->modifiers, "Alt"))
return EINA_FALSE;
//Save
@ -853,7 +850,7 @@ keygrabber_key_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED,
}
static void
statusbar_set(void)
statusbar_set()
{
Evas_Object *obj = stats_init(base_layout_get());
elm_object_part_content_set(base_layout_get(), "elm.swallow.statusbar", obj);
@ -864,7 +861,7 @@ static void
keygrabber_init(app_data *ad)
{
Evas *e = evas_object_evas_get(base_enventor_get());
ad->keygrabber = base_enventor_get();
ad->keygrabber = evas_object_rectangle_add(e);
evas_object_event_callback_add(ad->keygrabber, EVAS_CALLBACK_KEY_DOWN,
keygrabber_key_down_cb, NULL);
#define GRAB_ADD(key, modifier) \
@ -936,7 +933,7 @@ enventor_lock_create(void)
//Exception 2
//Create temp directory if it doesn't exist.
if (!ecore_file_is_dir(tmpdir))
if (!ecore_file_path_dir_exists(tmpdir))
{
Eina_Bool success = ecore_file_mkdir(tmpdir);
if (!success)
@ -952,35 +949,13 @@ enventor_lock_create(void)
//Is there any other Enventor instance?
if (ecore_file_exists(buf))
{
#ifdef _WIN32
hMutex = OpenMutex(MUTEX_ALL_ACCESS, 0, ENVENTOR_NAME);
if (hMutex)
{
fprintf(stdout, "Enventor program is already running!\n\n"
"If you are really stuck in launching enventor due to "
"this,\nTry removing a file \"%s\"\n", buf);
return EINA_FALSE;
}
#else
fprintf(stdout, "Enventor program is already running!\n\n"
"If you are really stuck in launching enventor due to "
"this,\nTry removing a file \"%s\"\n", buf);
"If you are really stuck in launching enventor due to "
"this,\nTry removing a file \"%s\"\n", buf);
return EINA_FALSE;
#endif
}
//Ok, this is an unique instance!
#ifdef _WIN32
hMutex = CreateMutex(NULL, FALSE, ENVENTOR_NAME);
HANDLE handle = CreateFile(buf, GENERIC_READ, 0, NULL, CREATE_NEW,
FILE_FLAG_DELETE_ON_CLOSE, 0);
if (INVALID_HANDLE_VALUE == handle)
{
EINA_LOG_ERR("Failed to open file \"%s\"", buf);
return EINA_TRUE;
}
#else
FILE *fp = fopen(buf, "w");
if (!fp)
{
@ -989,7 +964,6 @@ enventor_lock_create(void)
}
fputs("x", fp);
fclose(fp);
#endif
own_lock = EINA_TRUE;
@ -997,18 +971,11 @@ enventor_lock_create(void)
}
static void
enventor_lock_remove(void)
enventor_lock_remove()
{
//You are not the owner of the lock.
if (!own_lock) return;
#ifdef _WIN32
if (hMutex)
{
CloseHandle(hMutex);
hMutex = NULL;
}
#else
//Tempoary Folder
const char *tmpdir = eina_environment_tmp_get();
if (!tmpdir)
@ -1017,7 +984,7 @@ enventor_lock_remove(void)
return;
}
if (!ecore_file_is_dir(tmpdir))
if (!ecore_file_path_dir_exists(tmpdir))
{
EINA_LOG_ERR("Cannot access to temporary directory?! = %s", tmpdir);
return;
@ -1034,10 +1001,27 @@ enventor_lock_remove(void)
}
ecore_file_remove(buf);
#endif
}
#ifndef _WIN32
#ifdef _WIN32
static void
crash_handler(int signal EINA_UNUSED)
{
EINA_LOG_ERR("Eeeek! Eventor is terminated abnormally!");
enventor_lock_remove();
}
static void
sigaction_setup(void)
{
signal(SIGABRT, &crash_handler);
signal(SIGFPE, &crash_handler);
signal(SIGILL, &crash_handler);
signal(SIGINT, &crash_handler);
signal(SIGSEGV, &crash_handler);
signal(SIGTERM, &crash_handler);
}
#else
static void
crash_handler(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED,
void *data EINA_UNUSED)
@ -1045,12 +1029,10 @@ crash_handler(int x EINA_UNUSED, siginfo_t *info EINA_UNUSED,
EINA_LOG_ERR("Eeeek! Eventor is terminated abnormally!");
enventor_lock_remove();
}
#endif
static void
sigaction_setup(void)
{
#ifndef _WIN32
//Just in case, if you are debugging using gdb,
//you can send signals like this. "handle SIGABRT pass"
//Use this for remove the enventor lock.
@ -1086,18 +1068,16 @@ sigaction_setup(void)
//Interrupt from keyboard
//sigaction(SIGINT, &action, NULL);
#else
(void) 0;
#endif
}
#endif
static Eina_Bool
init(app_data *ad, int argc, char **argv)
{
#ifdef ENABLE_NLS
setlocale(LC_ALL, "");
bindtextdomain(PACKAGE_NAME, LOCALE_DIR);
textdomain(PACKAGE_NAME);
bindtextdomain(PACKAGE, LOCALE_DIR);
textdomain(PACKAGE);
#endif /* set locale */
elm_setup();
@ -1112,7 +1092,7 @@ init(app_data *ad, int argc, char **argv)
if (!config_data_set(argc, argv, &default_edc, &template))
return EINA_FALSE;
if (!template) newfile_default_set(default_edc);
newfile_default_set(default_edc);
base_gui_init();
statusbar_set();
Enventor_Object *enventor = enventor_setup(ad);
@ -1159,7 +1139,7 @@ term(void)
}
EAPI_MAIN
static int elm_main(int argc, char **argv)
int elm_main(int argc, char **argv)
{
app_data ad;
memset(&ad, 0x00, sizeof(ad));

View File

@ -131,7 +131,7 @@ menu_back_btn_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED,
menu_close(md);
}
static void
void
newfile_open(menu_data *md)
{
if (md->newfile_layout) return;
@ -700,7 +700,7 @@ menu_toggle(void)
return;
}
//Main Menu
//Main Menu
if (md->active_request) menu_close(md);
else
{

View File

@ -1,34 +0,0 @@
enventor_bin_src = [
'base_gui.c',
'build_setting.c',
'config_data.c',
'console.c',
'edc_navigator.c',
'file_browser.c',
'file_mgr.c',
'file_tab.c',
'goto.c',
'help.c',
'live_edit.c',
'main.c',
'menu.c',
'newfile.c',
'panes.c',
'preference_setting.c',
'search.c',
'setting.c',
'statusbar.c',
'text_setting.c',
'tools.c',
'utils.c'
]
enventor_bin = executable('enventor', enventor_bin_src,
c_args : [ enventor_cargs,
'-DHAVE_CONFIG_H',
'-I' + join_paths(meson.source_root(), 'src/include') ],
dependencies : [ enventor, dependency('elementary', version : efl_req) ],
include_directories : config_dir,
install : true
)

View File

@ -74,7 +74,7 @@ templates_get(new_data *nd)
char buf[PATH_MAX];
snprintf(buf, sizeof(buf), "%s/templates", elm_app_data_dir_get());
if (!ecore_file_is_dir(buf))
if (!ecore_file_path_dir_exists(buf))
{
EINA_LOG_ERR(_("Cannot find templates folder! \"%s\""), buf);
return;

View File

@ -21,8 +21,8 @@ typedef struct _pane_data
typedef struct _panes_data
{
pane_data horiz; //horizontal pane data (editors, console)
pane_data vert; //vertical pane data (live view, text editor)
pane_data horiz; //horizontal pane data (live view, text editor)
pane_data vert; //vertical pane data (editors, console)
Evas_Object *text_tool_layout;
Evas_Object *live_tool_layout;
} panes_data;
@ -54,45 +54,45 @@ transit_op_h(void *data, Elm_Transit *transit EINA_UNUSED, double progress)
static void
v_press_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
panes_data *pd = data;
pd->vert.last_size[0] = elm_panes_content_right_size_get(obj);
panes_data *pd = data;
pd->vert.last_size[0] = elm_panes_content_right_size_get(obj);
}
static void
v_unpress_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
panes_data *pd = data;
double size = elm_panes_content_right_size_get(obj);
if (pd->vert.last_size[0] != size) pd->vert.last_size[1] = size;
config_editor_size_set(size);
panes_data *pd = data;
double size = elm_panes_content_right_size_get(obj);
if (pd->vert.last_size[0] != size) pd->vert.last_size[1] = size;
config_console_size_set(size);
double origin = elm_panes_content_right_size_get(pd->vert.obj);
if (origin == 0.0)
{
pd->vert.state = PANES_EDITORS_EXPAND;
tools_console_update(EINA_FALSE);
}
else
{
pd->vert.state = PANES_SPLIT_VIEW;
tools_console_update(EINA_TRUE);
}
}
static void
h_press_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
panes_data *pd = data;
pd->horiz.last_size[0] = elm_panes_content_right_size_get(obj);
panes_data *pd = data;
pd->horiz.last_size[0] = elm_panes_content_right_size_get(obj);
}
static void
h_unpress_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
panes_data *pd = data;
double size = elm_panes_content_right_size_get(obj);
if (pd->horiz.last_size[0] != size) pd->horiz.last_size[1] = size;
config_console_size_set(size);
double origin = elm_panes_content_right_size_get(pd->horiz.obj);
if (origin == 0.0)
{
pd->horiz.state = PANES_EDITORS_EXPAND;
tools_console_update(EINA_FALSE);
}
else
{
pd->horiz.state = PANES_SPLIT_VIEW;
tools_console_update(EINA_TRUE);
}
panes_data *pd = data;
double size = elm_panes_content_right_size_get(obj);
if (pd->horiz.last_size[0] != size) pd->horiz.last_size[1] = size;
config_editor_size_set(size);
}
static void
@ -115,13 +115,6 @@ panes_h_full_view_cancel(panes_data *pd)
pd->horiz.origin = elm_panes_content_right_size_get(pd->horiz.obj);
pd->horiz.delta = pd->horiz.last_size[1] - pd->horiz.origin;
//init console size to default
if (pd->horiz.delta == 0.0)
{
pd->horiz.delta = DEFAULT_CONSOLE_SIZE;
config_console_size_set(DEFAULT_CONSOLE_SIZE);
}
elm_transit_del(pd->horiz.transit);
Elm_Transit *transit = elm_transit_add();
@ -141,13 +134,20 @@ panes_v_full_view_cancel(panes_data *pd)
pd->vert.origin = elm_panes_content_right_size_get(pd->vert.obj);
pd->vert.delta = pd->vert.last_size[1] - pd->vert.origin;
//init console size to default
if (pd->vert.delta == 0.0)
{
pd->vert.delta = DEFAULT_CONSOLE_SIZE;
config_console_size_set(DEFAULT_CONSOLE_SIZE);
}
elm_transit_del(pd->vert.transit);
Elm_Transit *transit = elm_transit_add();
elm_transit_del_cb_set(transit, vert_transit_del_cb, pd);
elm_transit_effect_add(transit, transit_op_v, pd, NULL);
elm_transit_tween_mode_set(transit, ELM_TRANSIT_TWEEN_MODE_DECELERATE);
elm_transit_duration_set(transit, TRANSIT_TIME);
elm_transit_del_cb_set(transit, vert_transit_del_cb, pd);
elm_transit_go(transit);
pd->vert.transit = transit;
@ -165,29 +165,29 @@ panes_text_editor_full_view(void)
EINA_SAFETY_ON_NULL_RETURN(pd);
//Revert state if the current state is full view right already.
if (pd->vert.state == PANES_TEXT_EDITOR_EXPAND)
if (pd->horiz.state == PANES_TEXT_EDITOR_EXPAND)
{
panes_v_full_view_cancel(pd);
panes_h_full_view_cancel(pd);
return;
}
double origin = elm_panes_content_right_size_get(pd->vert.obj);
double origin = elm_panes_content_right_size_get(pd->horiz.obj);
if (origin == 0.0) return;
pd->vert.origin = origin;
pd->vert.delta = 0.0 - pd->vert.origin;
pd->horiz.origin = origin;
pd->horiz.delta = 0.0 - pd->horiz.origin;
elm_transit_del(pd->vert.transit);
elm_transit_del(pd->horiz.transit);
Elm_Transit *transit = elm_transit_add();
elm_transit_effect_add(transit, transit_op_v, pd, NULL);
elm_transit_effect_add(transit, transit_op_h, pd, NULL);
elm_transit_tween_mode_set(transit, ELM_TRANSIT_TWEEN_MODE_DECELERATE);
elm_transit_duration_set(transit, TRANSIT_TIME);
elm_transit_del_cb_set(transit, vert_transit_del_cb, pd);
elm_transit_del_cb_set(transit, horiz_transit_del_cb, pd);
elm_transit_go(transit);
pd->vert.transit = transit;
pd->vert.state = PANES_TEXT_EDITOR_EXPAND;
pd->horiz.transit = transit;
pd->horiz.state = PANES_TEXT_EDITOR_EXPAND;
}
void
@ -197,80 +197,7 @@ panes_live_view_full_view(void)
EINA_SAFETY_ON_NULL_RETURN(pd);
//Revert state if the current state is full view left already.
if (pd->vert.state == PANES_LIVE_VIEW_EXPAND)
{
panes_v_full_view_cancel(pd);
return;
}
double origin = elm_panes_content_right_size_get(pd->vert.obj);
if (origin == 1.0) return;
pd->vert.origin = origin;
pd->vert.delta = 1.0 - pd->vert.origin;
elm_transit_del(pd->vert.transit);
Elm_Transit *transit = elm_transit_add();
elm_transit_effect_add(transit, transit_op_v, pd, NULL);
elm_transit_tween_mode_set(transit, ELM_TRANSIT_TWEEN_MODE_DECELERATE);
elm_transit_duration_set(transit, TRANSIT_TIME);
elm_transit_del_cb_set(transit, vert_transit_del_cb, pd);
elm_transit_go(transit);
pd->vert.transit = transit;
pd->vert.state = PANES_LIVE_VIEW_EXPAND;
}
Eina_Bool
panes_editors_full_view_get(void)
{
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN_VAL(pd, EINA_FALSE);
if (pd->horiz.state == PANES_EDITORS_EXPAND) return EINA_TRUE;
else return EINA_FALSE;
}
void
panes_editors_full_view(Eina_Bool full_view)
{
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
if (full_view)
{
if (pd->horiz.state == PANES_EDITORS_EXPAND) return;
pd->horiz.origin = elm_panes_content_right_size_get(pd->horiz.obj);
pd->horiz.delta = 0.0 - pd->horiz.origin;
elm_transit_del(pd->horiz.transit);
Elm_Transit *transit = elm_transit_add();
elm_transit_effect_add(transit, transit_op_h, pd, NULL);
elm_transit_tween_mode_set(transit, ELM_TRANSIT_TWEEN_MODE_DECELERATE);
elm_transit_duration_set(transit, TRANSIT_TIME);
elm_transit_del_cb_set(transit, horiz_transit_del_cb, pd);
elm_transit_go(transit);
pd->horiz.transit = transit;
pd->horiz.state = PANES_EDITORS_EXPAND;
}
else
{
//Revert state if the current state is full view bottom already.
if (pd->horiz.state == PANES_SPLIT_VIEW) return;
panes_h_full_view_cancel(pd);
}
}
void
panes_console_full_view(void)
{
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
//Revert state if the current state is full view top already.
if (pd->horiz.state == PANES_CONSOLE_EXPAND)
if (pd->horiz.state == PANES_LIVE_VIEW_EXPAND)
{
panes_h_full_view_cancel(pd);
return;
@ -292,7 +219,80 @@ panes_console_full_view(void)
elm_transit_go(transit);
pd->horiz.transit = transit;
pd->horiz.state = PANES_CONSOLE_EXPAND;
pd->horiz.state = PANES_LIVE_VIEW_EXPAND;
}
Eina_Bool
panes_editors_full_view_get(void)
{
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN_VAL(pd, EINA_FALSE);
if (pd->vert.state == PANES_EDITORS_EXPAND) return EINA_TRUE;
else return EINA_FALSE;
}
void
panes_editors_full_view(Eina_Bool full_view)
{
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
if (full_view)
{
if (pd->vert.state == PANES_EDITORS_EXPAND) return;
pd->vert.origin = elm_panes_content_right_size_get(pd->vert.obj);
pd->vert.delta = 0.0 - pd->vert.origin;
elm_transit_del(pd->vert.transit);
Elm_Transit *transit = elm_transit_add();
elm_transit_effect_add(transit, transit_op_v, pd, NULL);
elm_transit_tween_mode_set(transit, ELM_TRANSIT_TWEEN_MODE_DECELERATE);
elm_transit_duration_set(transit, TRANSIT_TIME);
elm_transit_del_cb_set(transit, vert_transit_del_cb, pd);
elm_transit_go(transit);
pd->vert.transit = transit;
pd->vert.state = PANES_EDITORS_EXPAND;
}
else
{
//Revert state if the current state is full view bottom already.
if (pd->vert.state == PANES_SPLIT_VIEW) return;
panes_v_full_view_cancel(pd);
}
}
void
panes_console_full_view(void)
{
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
//Revert state if the current state is full view top already.
if (pd->vert.state == PANES_CONSOLE_EXPAND)
{
panes_v_full_view_cancel(pd);
return;
}
double origin = elm_panes_content_right_size_get(pd->vert.obj);
if (origin == 1.0) return;
pd->vert.origin = origin;
pd->vert.delta = 1.0 - pd->vert.origin;
elm_transit_del(pd->vert.transit);
Elm_Transit *transit = elm_transit_add();
elm_transit_effect_add(transit, transit_op_v, pd, NULL);
elm_transit_tween_mode_set(transit, ELM_TRANSIT_TWEEN_MODE_DECELERATE);
elm_transit_duration_set(transit, TRANSIT_TIME);
elm_transit_del_cb_set(transit, vert_transit_del_cb, pd);
elm_transit_go(transit);
pd->vert.transit = transit;
pd->vert.state = PANES_CONSOLE_EXPAND;
}
void
@ -319,7 +319,7 @@ panes_console_set(Evas_Object *console)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
elm_object_part_content_set(pd->horiz.obj, "bottom", console);
elm_object_part_content_set(pd->vert.obj, "bottom", console);
}
void
@ -328,9 +328,9 @@ panes_term(void)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
evas_object_del(pd->horiz.obj);
elm_transit_del(pd->horiz.transit);
evas_object_del(pd->vert.obj);
elm_transit_del(pd->vert.transit);
elm_transit_del(pd->horiz.transit);
free(pd);
}
@ -345,64 +345,64 @@ panes_init(Evas_Object *parent)
}
g_pd = pd;
//Panes Horizontal
Evas_Object *panes_h = elm_panes_add(parent);
elm_object_style_set(panes_h, "flush");
elm_panes_horizontal_set(panes_h, EINA_TRUE);
evas_object_size_hint_weight_set(panes_h, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_smart_callback_add(panes_h, "press", h_press_cb, pd);
evas_object_smart_callback_add(panes_h, "unpress", h_unpress_cb, pd);
pd->horiz.obj = panes_h;
pd->horiz.state = PANES_SPLIT_VIEW;
pd->horiz.last_size[0] = config_console_size_get();
pd->horiz.last_size[1] = config_console_size_get();
pd->horiz.transit = NULL;
//Panes Vertical
Evas_Object *panes_v = elm_panes_add(parent);
elm_object_style_set(panes_v, ENVENTOR_NAME);
elm_object_style_set(panes_v, "flush");
elm_panes_horizontal_set(panes_v, EINA_FALSE);
evas_object_size_hint_weight_set(panes_v, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_smart_callback_add(panes_v, "press", v_press_cb, pd);
evas_object_smart_callback_add(panes_v, "unpress", v_unpress_cb, pd);
elm_object_part_content_set(panes_h, "top", panes_v);
pd->vert.obj = panes_v;
pd->vert.state = PANES_SPLIT_VIEW;
pd->vert.last_size[0] = config_editor_size_get();
pd->vert.last_size[1] = config_editor_size_get();
pd->vert.last_size[0] = config_console_size_get();
pd->vert.last_size[1] = config_console_size_get();
pd->vert.transit = NULL;
elm_panes_content_right_size_set(panes_h, config_console_size_get());
elm_panes_content_right_size_set(panes_v, config_editor_size_get());
//Panes Horizontal
Evas_Object *panes_h = elm_panes_add(parent);
elm_object_style_set(panes_h, ENVENTOR_NAME);
elm_panes_horizontal_set(panes_v, EINA_TRUE);
evas_object_size_hint_weight_set(panes_h, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_smart_callback_add(panes_h, "press", h_press_cb, pd);
evas_object_smart_callback_add(panes_h, "unpress", h_unpress_cb, pd);
elm_object_part_content_set(panes_v, "top", panes_h);
pd->horiz.obj = panes_h;
pd->horiz.state = PANES_SPLIT_VIEW;
pd->horiz.last_size[0] = config_editor_size_get();
pd->horiz.last_size[1] = config_editor_size_get();
pd->horiz.transit = NULL;
elm_panes_content_right_size_set(panes_h, config_editor_size_get());
elm_panes_content_right_size_set(panes_v, config_console_size_get());
//Text Tools
Evas_Object *text_tool_layout = elm_layout_add(pd->vert.obj);
Evas_Object *text_tool_layout = elm_layout_add(pd->horiz.obj);
elm_layout_file_set(text_tool_layout, EDJE_PATH, "tools_layout");
evas_object_size_hint_weight_set(text_tool_layout, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(text_tool_layout, EVAS_HINT_FILL,
EVAS_HINT_FILL);
elm_object_part_content_set(pd->vert.obj, "right", text_tool_layout);
elm_object_part_content_set(pd->horiz.obj, "right", text_tool_layout);
pd->text_tool_layout = text_tool_layout;
//Live Edit Tools
Evas_Object *live_tool_layout = elm_layout_add(pd->vert.obj);
Evas_Object *live_tool_layout = elm_layout_add(pd->horiz.obj);
elm_layout_file_set(live_tool_layout, EDJE_PATH, "tools_layout");
evas_object_size_hint_weight_set(live_tool_layout, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(live_tool_layout, EVAS_HINT_FILL,
EVAS_HINT_FILL);
elm_object_part_content_set(pd->vert.obj, "left", live_tool_layout);
elm_object_part_content_set(pd->horiz.obj, "left", live_tool_layout);
pd->live_tool_layout = live_tool_layout;
return panes_h;
return panes_v;
}
void
@ -411,7 +411,7 @@ panes_live_view_tools_set(Evas_Object *tools)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
Evas_Object *live_view = elm_object_part_content_get(pd->vert.obj, "left");
Evas_Object *live_view = elm_object_part_content_get(pd->horiz.obj, "left");
elm_object_part_content_set(live_view, "elm.swallow.tools", tools);
}
@ -421,7 +421,7 @@ panes_live_edit_fixed_bar_set(Evas_Object *fixed_bar)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
Evas_Object *live_view = elm_object_part_content_get(pd->vert.obj, "left");
Evas_Object *live_view = elm_object_part_content_get(pd->horiz.obj, "left");
elm_object_part_content_set(live_view, "elm.swallow.fixed_bar", fixed_bar);
}
@ -431,7 +431,7 @@ panes_text_editor_tools_set(Evas_Object *tools)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
Evas_Object *text_editor = elm_object_part_content_get(pd->vert.obj,
Evas_Object *text_editor = elm_object_part_content_get(pd->horiz.obj,
"right");
elm_object_part_content_set(text_editor, "elm.swallow.tools", tools);
}
@ -442,7 +442,7 @@ panes_live_view_tools_visible_set(Eina_Bool visible)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
Evas_Object *live_view = elm_object_part_content_get(pd->vert.obj, "left");
Evas_Object *live_view = elm_object_part_content_get(pd->horiz.obj, "left");
if (visible)
elm_object_signal_emit(live_view, "elm,state,tools,show", "");
@ -456,7 +456,7 @@ panes_live_edit_fixed_bar_visible_set(Eina_Bool visible)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
Evas_Object *live_view = elm_object_part_content_get(pd->vert.obj, "left");
Evas_Object *live_view = elm_object_part_content_get(pd->horiz.obj, "left");
if (visible)
elm_object_signal_emit(live_view, "elm,state,fixed_bar,show", "");
@ -471,7 +471,7 @@ panes_text_editor_tools_visible_set(Eina_Bool visible)
panes_data *pd = g_pd;
EINA_SAFETY_ON_NULL_RETURN(pd);
Evas_Object *text_editor = elm_object_part_content_get(pd->vert.obj,
Evas_Object *text_editor = elm_object_part_content_get(pd->horiz.obj,
"right");
if (visible)

View File

@ -239,7 +239,8 @@ preference_setting_content_get(preference_setting_data *psd,
toggle_create(box, _("Status"), config_stats_bar_get(),
_("Status (F8)<br>"
"Display Status bar, which shows subsidiary<br>"
"information for editing in the bottom area."));
"information for editing in the bottom area."
"editing."));
elm_box_pack_end(box, toggle_status);
//Toggle (Console)
@ -254,7 +255,8 @@ preference_setting_content_get(preference_setting_data *psd,
//Toggle (Auto Indentation)
Evas_Object *toggle_indent =
toggle_create(box, _("Auto Indentation"), config_auto_indent_get(),
_("Apply automatic indentation for text editing.<br>"
_("Auto indentation (Ctrl + I)<br>"
"Apply automatic indentation for text editing.<br>"
"When wrapping the text around, Enventor<br>"
"inserts the line indentation automatically."));
elm_box_pack_end(box, toggle_indent);
@ -262,8 +264,9 @@ preference_setting_content_get(preference_setting_data *psd,
//Toggle (Auto Completion)
Evas_Object *toggle_autocomp =
toggle_create(box, _("Auto Completion"), config_auto_complete_get(),
_("Display the candidate keyword popup with<br>"
"regards to the current editing context.<br>"
_("Auto completion (Ctrl + O)<br>"
"Display the candidate keyword popup with<br>"
"regards to the current editing contxt.<br>"
"When you type texts in the editor, the candidate<br>"
"popup appears. You can choose an item<br>"
"from the list, and a code template is inserted."));

View File

@ -107,11 +107,6 @@ selection_region_anim_cb(void *data)
search_data *sd = data;
enventor_item_select_region_set(sd->it, sd->pos,
(sd->pos + sd->len));
//Move search position to the end of the word if search type is forward
if (sd->forward)
sd->pos += sd->len;
return ECORE_CALLBACK_CANCEL;
}
@ -233,7 +228,6 @@ replace_proc(search_data *sd)
if (strcmp(find, utf8)) return EINA_FALSE;
const char *replace = elm_entry_entry_get(sd->en_replace);
enventor_item_text_insert(sd->it, replace);
enventor_item_select_none(sd->it);
free(utf8);
return EINA_TRUE;
}

View File

@ -52,7 +52,7 @@ ctxpopup_dismissed_cb(void *data, Evas_Object *obj,
void *event_info EINA_UNUSED)
{
stats_data *sd = data;
elm_object_focus_set(base_enventor_get(), EINA_TRUE);
enventor_object_focus_set(base_enventor_get(), EINA_TRUE);
evas_object_del(obj);
sd->ctxpopup = NULL;
}

View File

@ -112,7 +112,7 @@ static int color_type_list[COLOR_KEYWORD_MAX_CNT] =
ENVENTOR_SYNTAX_COLOR_SYMBOL, ENVENTOR_SYNTAX_COLOR_SYMBOL,
//set_int(...
ENVENTOR_SYNTAX_COLOR_SCRIPT_FUNC, ENVENTOR_SYNTAX_COLOR_SYMBOL,
//flag, 1);...
//flag, 1);...
ENVENTOR_SYNTAX_COLOR_SYMBOL, ENVENTOR_SYNTAX_COLOR_SYMBOL,
//} }
ENVENTOR_SYNTAX_COLOR_SYMBOL, ENVENTOR_SYNTAX_COLOR_SYMBOL
@ -778,10 +778,7 @@ font_name_selected_cb(void *data, Evas_Object *obj,
config_font_get(&font_name, &font_style);
//Initialize font style
elm_list_clear(tsd->list_font_style);
eina_stringshare_del(tsd->font_style);
tsd->font_style = NULL;
//Append Items of Font Style List
Elm_Font_Properties *efp;
@ -805,7 +802,6 @@ font_name_selected_cb(void *data, Evas_Object *obj,
NULL,
NULL, font_style_selected_cb,
tsd);
if (font_name && !strcmp(font_name, efp->name) &&
font_style && !strcmp(font_style, style))
font_style_it = it;
@ -815,12 +811,10 @@ font_name_selected_cb(void *data, Evas_Object *obj,
}
}
elm_list_go(tsd->list_font_style);
if (!font_style_it)
font_style_it = elm_list_first_item_get(tsd->list_font_style);
elm_list_item_selected_set(font_style_it, EINA_TRUE);
if (font_style_it) elm_list_item_selected_set(font_style_it, EINA_TRUE);
eina_stringshare_replace(&tsd->font_name, sel_font_name);
eina_stringshare_replace(&tsd->font_style, NULL);
text_setting_font_apply(tsd);
}

View File

@ -154,30 +154,6 @@ undo_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
stats_info_msg_update(_("No text to be undo."));
}
static void
tools_separator_insert(Evas_Object *box)
{
Evas_Object *separator = evas_object_rectangle_add(evas_object_evas_get(box));
evas_object_color_set(separator, 48, 48, 48, 255);
evas_object_size_hint_weight_set(separator, 0.0, 0.0);
evas_object_size_hint_align_set(separator, 0.0, 0.5);
evas_object_size_hint_min_set(separator, 1, 20);
elm_box_pack_end(box, separator);
evas_object_show(separator);
}
static void
tools_space_insert(Evas_Object *box, int size)
{
Evas_Object *space = evas_object_rectangle_add(evas_object_evas_get(box));
evas_object_color_set(space, 0, 0, 0, 0);
evas_object_size_hint_weight_set(space, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(space, 0.0, EVAS_HINT_FILL);
evas_object_size_hint_min_set(space, size, 0);
elm_box_pack_end(box, space);
evas_object_show(space);
}
static Evas_Object *
tools_btn_create(Evas_Object *parent, const char *icon,
const char *tooltip_msg, Evas_Smart_Cb func)
@ -221,186 +197,136 @@ tools_init(Evas_Object *parent)
g_td = td;
//Live view tools
Evas_Object *live_view_scr = elm_scroller_add(parent);
evas_object_size_hint_weight_set(live_view_scr, EVAS_HINT_EXPAND,
Evas_Object *live_view_ly = elm_layout_add(parent);
elm_layout_file_set(live_view_ly, EDJE_PATH, "live_view_tools_layout");
evas_object_size_hint_weight_set(live_view_ly, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(live_view_scr, EVAS_HINT_FILL,
evas_object_size_hint_align_set(live_view_ly, EVAS_HINT_FILL,
EVAS_HINT_FILL);
elm_scroller_bounce_set(live_view_scr, EINA_FALSE, EINA_FALSE);
elm_scroller_policy_set(live_view_scr, ELM_SCROLLER_POLICY_OFF,
ELM_SCROLLER_POLICY_OFF);
evas_object_show(live_view_scr);
Evas_Object *box = elm_box_add(live_view_scr);
elm_box_horizontal_set(box, EINA_TRUE);
evas_object_size_hint_weight_set(box, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(box, 0.0, EVAS_HINT_FILL);
elm_object_content_set(live_view_scr, box);
evas_object_show(box);
tools_space_insert(box, 14);
Evas_Object *btn;
btn = tools_btn_create(box, "highlight",
btn = tools_btn_create(live_view_ly, "highlight",
_("Part highlighting (Ctrl + H)<br>"
"Show a highlight effect on the selected part<br>"
"in the live view."),
highlight_cb);
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM_RIGHT);
evas_object_size_hint_weight_set(btn, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 0.0, EVAS_HINT_FILL);
elm_box_pack_end(box, btn);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(live_view_ly, "elm.swallow.highlight", btn);
td->highlight_btn = btn;
tools_space_insert(box, 8);
btn = tools_btn_create(box, "dummy",
btn = tools_btn_create(live_view_ly, "dummy",
_("Dummy parts (Ctrl + U)<br>"
"Display virtual images for the swallow and<br>"
"spacer parts."),
dummy_cb);
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM_RIGHT);
evas_object_size_hint_weight_set(btn, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 0.0, EVAS_HINT_FILL);
elm_box_pack_end(box, btn);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(live_view_ly, "elm.swallow.dummy", btn);
td->swallow_btn = btn;
tools_space_insert(box, 8);
btn = tools_btn_create(box, "wireframes_icon",
btn = tools_btn_create(live_view_ly, "wireframes_icon",
_("Wireframes (Ctrl + W)<br>"
"Display wireframes to identify the parts<br>"
"boundaries."),
wireframes_cb);
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM_RIGHT);
evas_object_size_hint_weight_set(btn, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 0.0, EVAS_HINT_FILL);
elm_box_pack_end(box, btn);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(live_view_ly, "elm.swallow.wireframes", btn);
td->wireframes_btn = btn;
tools_space_insert(box, 8);
btn = tools_btn_create(box, "mirror",
btn = tools_btn_create(live_view_ly, "mirror",
_("Mirror mode (Ctrl + M)<br>"
"Invert the layout horizontally and review<br>"
"the designed layout in RTL(right-to-left)<br>"
"LTR(left-to-right) settings."),
mirror_cb);
evas_object_size_hint_weight_set(btn, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 0.0, EVAS_HINT_FILL);
elm_box_pack_end(box, btn);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(live_view_ly, "elm.swallow.mirror", btn);
td->mirror_btn = btn;
tools_space_insert(box, 14);
tools_separator_insert(box);
tools_space_insert(box, 14);
//Live edit tools
Eina_List *btn_list = live_edit_tools_create(box);
Eina_List *btn_list = live_edit_tools_create(live_view_ly);
Eina_List *l = NULL;
int i = 1;
EINA_LIST_FOREACH(btn_list, l, btn)
{
evas_object_size_hint_weight_set(btn, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 1.0, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
char swallow_part[32];
snprintf(swallow_part, sizeof(swallow_part), "elm.swallow.live_edit%d",
i);
elm_box_pack_end(box, btn);
tools_space_insert(box, 8);
elm_object_part_content_set(live_view_ly, swallow_part, btn);
i++;
}
eina_list_free(btn_list);
td->live_view_ly = live_view_scr;
td->live_view_ly = live_view_ly;
//Text editor tools
Evas_Object *text_editor_scr = elm_scroller_add(parent);
evas_object_size_hint_weight_set(text_editor_scr, EVAS_HINT_EXPAND,
Evas_Object *text_editor_ly = elm_layout_add(parent);
elm_layout_file_set(text_editor_ly, EDJE_PATH, "text_editor_tools_layout");
evas_object_size_hint_weight_set(text_editor_ly, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(text_editor_scr, EVAS_HINT_FILL,
evas_object_size_hint_align_set(text_editor_ly, EVAS_HINT_FILL,
EVAS_HINT_FILL);
elm_scroller_bounce_set(text_editor_scr, EINA_FALSE, EINA_FALSE);
elm_scroller_policy_set(text_editor_scr, ELM_SCROLLER_POLICY_OFF,
ELM_SCROLLER_POLICY_OFF);
evas_object_show(text_editor_scr);
box = elm_box_add(text_editor_scr);
elm_box_horizontal_set(box, EINA_TRUE);
evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_content_set(text_editor_scr, box);
Evas_Object *box_left = elm_box_add(box);
elm_box_horizontal_set(box_left, EINA_TRUE);
evas_object_size_hint_weight_set(box_left, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(box_left, 0.0, EVAS_HINT_FILL);
elm_box_pack_end(box, box_left);
evas_object_show(box_left);
Evas_Object *box_right = elm_box_add(box);
elm_box_horizontal_set(box_right, EINA_TRUE);
evas_object_size_hint_weight_set(box_right, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(box_right, 1.0, EVAS_HINT_FILL);
elm_box_pack_end(box, box_right);
evas_object_show(box_right);
tools_space_insert(box_left, 14);
btn = tools_btn_create(box_left, "save",
btn = tools_btn_create(text_editor_ly, "save",
_("Save the file (Ctrl + S)<br>"
"Save the current script to a file."),
save_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.save", btn);
tools_space_insert(box_left, 8);
btn = tools_btn_create(box_left, "undo",
btn = tools_btn_create(text_editor_ly, "undo",
_("Undo text (Ctrl + Z)"),
undo_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.undo", btn);
tools_space_insert(box_left, 8);
btn = tools_btn_create(box_left, "redo",
btn = tools_btn_create(text_editor_ly, "redo",
_("Redo text (Ctrl + R)"),
redo_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.redo", btn);
tools_space_insert(box_left, 8);
btn = tools_btn_create(box_left, "find",
btn = tools_btn_create(text_editor_ly, "find",
_("Find/Replace (Ctrl + F)<br>"
"Find or replace text."),
find_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.find", btn);
td->find_btn = btn;
tools_space_insert(box_left, 8);
btn = tools_btn_create(box_left, "goto",
btn = tools_btn_create(text_editor_ly, "goto",
_("Go to line (Ctrl + L)<br>"
"Open the Go to window to move the cursor<br>"
"line position."),
goto_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.goto", btn);
td->goto_btn = btn;
tools_space_insert(box_left, 8);
btn = tools_btn_create(box_left, "lines",
btn = tools_btn_create(text_editor_ly, "lines",
_("Line numbers<br>"
"Display the script line numbers."),
lines_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.lines", btn);
td->lines_btn = btn;
tools_space_insert(box_left, 8);
btn = tools_btn_create(box_left, "template",
btn = tools_btn_create(text_editor_ly, "template",
_("Insert a code snippet (Ctrl + T)<br>"
"Enventor chooses the best code with regards<br>"
"to the current editing context. For instance,<br>"
@ -409,35 +335,31 @@ tools_init(Evas_Object *parent)
template_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_left, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.template", btn);
td->template_btn = btn;
tools_separator_insert(box_right);
tools_space_insert(box_right, 8);
btn = tools_btn_create(box_right, "console",
btn = tools_btn_create(text_editor_ly, "console",
_("Console box (Alt + Down)<br>"
"Display the console box, which shows the EDC<br>"
"build logs, such as error messages. It pops<br>"
"up automatically when compilation errors occur."),
"up automatically when compliation errors occur."),
console_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_right, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.console", btn);
td->console_btn = btn;
tools_space_insert(box_right, 8);
btn = tools_btn_create(box_right, "file_browser",
btn = tools_btn_create(text_editor_ly, "file_browser",
_("File browser (F9)<br>"
"Display the file browser, which shows a file list<br>"
"in current workspace."),
file_browser_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_right, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.file_browser", btn);
td->file_browser_btn = btn;
tools_space_insert(box_right, 8);
btn = tools_btn_create(box_right, "edc_navigator",
btn = tools_btn_create(text_editor_ly, "edc_navigator",
_("EDC navigator (F10)<br>"
"Display the EDC navigator, which shows the current<br>"
"group hierarchy tree that contains parts,<br>"
@ -445,36 +367,32 @@ tools_init(Evas_Object *parent)
edc_navigator_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_right, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.edc_navigator",
btn);
td->edc_navigator_btn = btn;
tools_space_insert(box_right, 8);
btn = tools_btn_create(box_right, "filetab",
btn = tools_btn_create(text_editor_ly, "filetab",
_("File tab (F11)<br>"
"Display the file tab in the bottom area<br>"
"It shows an opened file list to switch<br>"
"files quickly."),
"files quickly. to switch files quickly."),
file_tab_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_right, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.file_tab", btn);
td->file_tab = btn;
tools_space_insert(box_right, 8);
tools_separator_insert(box_right);
tools_space_insert(box_right, 14);
btn = tools_btn_create(box_right, "menu",
btn = tools_btn_create(text_editor_ly, "menu",
_("Enventor menu (Esc)<br>"
"Open the Enventor main menu."),
menu_cb);
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM_LEFT);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_box_pack_end(box_right, btn);
elm_object_part_content_set(text_editor_ly, "elm.swallow.menu", btn);
td->menu_btn = btn;
tools_space_insert(box_right, 14);
td->text_editor_ly = text_editor_scr;
td->text_editor_ly = text_editor_ly;
//Turn on if console is valid size.
if (!config_console_get() && (config_console_size_get() > 0))

View File

@ -9,8 +9,7 @@ char EDJE_PATH[PATH_MAX];
const char *ENVENTOR_NAME = "enventor";
Enventor_Item *active_item = NULL;
void
mem_fail_msg(void)
void mem_fail_msg(void)
{
EINA_LOG_ERR("Failed to allocate Memory!");
}

View File

@ -6,6 +6,7 @@ EXTRA_DIST = common.h \
menu.h \
panes.h \
statusbar.h \
globals.h \
tools.h \
newfile.h \
goto.h \
@ -19,6 +20,4 @@ EXTRA_DIST = common.h \
file_browser.h \
build_setting.h \
preference_setting.h \
help.h \
utils.h \
file_tab.h
help.h

View File

@ -59,7 +59,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
#define ROUNDING(x, dig) (floor((x) * pow(10, dig) + 0.5) / pow(10, dig))
#define ENVENTOR_CONFIG_VERSION 15
#define ENVENTOR_CONFIG_VERSION 13
#define EVENT_KEY_MODIFIER_CHECK(NAME, MASK) \
((MASK & ECORE_EVENT_MODIFIER_##NAME) && \
@ -86,7 +86,6 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
#include "file_mgr.h"
#include "build_setting.h"
#include "preference_setting.h"
#include "text_setting.h"
#include "help.h"
#include "file_tab.h"

View File

@ -63,12 +63,8 @@ void config_smart_undo_redo_set(Eina_Bool smart_undo_redo);
Eina_Bool config_smart_undo_redo_get(void);
void config_file_browser_set(Eina_Bool enabled);
Eina_Bool config_file_browser_get(void);
void config_file_browser_size_set(double size);
double config_file_browser_size_get(void);
void config_edc_navigator_set(Eina_Bool enabled);
Eina_Bool config_edc_navigator_get(void);
void config_edc_navigator_size_set(double size);
double config_edc_navigator_size_get(void);
Eina_Bool config_mirror_mode_get(void);
void config_mirror_mode_set(Eina_Bool mirror_mode);
void config_red_alert_set(Eina_Bool enabled);

View File

@ -1,10 +1,6 @@
#define DEFAULT_EDC_NAVIGATOR_SIZE 0.3
Evas_Object *edc_navigator_init(Evas_Object *parent);
void edc_navigator_term(void);
void edc_navigator_group_update(const char *cur_group);
void edc_navigator_deselect(void);
void edc_navigator_tools_set(void);
void edc_navigator_tools_visible_set(Eina_Bool visible);
void edc_navigator_show(void);
void edc_navigator_hide(void);

View File

@ -1,5 +1,3 @@
#define DEFAULT_FILE_BROWSER_SIZE 0.3
Evas_Object *file_browser_init(Evas_Object *parent);
void file_browser_term(void);
void file_browser_workspace_set(const char *workspace_dir);
@ -9,5 +7,3 @@ void file_browser_refresh(void);
void file_browser_selected_file_main_set(void);
void file_brwser_refresh(void);
void file_browser_main_file_unset(void);
void file_browser_show(void);
void file_browser_hide(void);

View File

@ -11,4 +11,4 @@ Eina_Bool live_edit_cancel(Eina_Bool phase_in);
Eina_Bool live_edit_get(void);
void live_edit_update(void);
Eina_List *live_edit_tools_create(Evas_Object *parent);
Evas_Object *live_edit_fixed_bar_get(void);
Evas_Object *live_edit_fixed_bar_get();

View File

@ -1,208 +0,0 @@
#ifndef ENVENTOR_H
#define ENVENTOR_H
#ifndef ENVENTOR_BETA_API_SUPPORT
#error "Enventor APIs still unstable. It's under BETA and changeable!! If you really want to use the APIs, Please define ENVENTOR_BETA_API_SUPPORT"
#endif
#define EFL_UI_FOCUS_OBJECT_PROTECTED 1
#ifdef __cplusplus
extern "C"
{
#endif
#include <Efl_Config.h>
#include <Elementary.h>
/***
* Compatible ABI for Win32
***/
#ifdef _WIN32
# ifdef EAPI
# undef EAPI
# endif
# ifdef ENVENTOR_WIN32_BUILD_SUPPORT
# define EAPI __declspec(dllexport)
# else
# define EAPI __declspec(dllimport)
# endif
#else
# ifdef __GNUC__
# if __GNUC__ >= 4
# define EAPI __attribute__ ((visibility("default")))
# else
# define EAPI
# endif
# else
# define EAPI
# endif
#endif
/**
* Enventor emits the following signals
* @li "cursor,line,changed":
* @li "cursor,group,changed":
* @li "live_view,updated":
* @li "live_view,loaded":
* @li "live_view,cursor,moved":
* @li "live_view,resized":
* @li "max_line,changed":
* @li "compile,error":
* @li "ctxpopup,activated":
* @li "ctxpopup,changed":
* @li "ctxpopup,dismissed":
* @li "edc,modified":
* @li "focused":
* @li "file,open,requested":
*/
typedef Eo Enventor_Object;
typedef struct _Enventor_Item_Data Enventor_Item;
typedef enum
{
ENVENTOR_CTXPOPUP_TYPE_SLIDER = 0,
ENVENTOR_CTXPOPUP_TYPE_LIST,
ENVENTOR_CTXPOPUP_TYPE_TOGGLE,
ENVENTOR_CTXPOPUP_TYPE_IMAGE
} Enventor_Ctxpopup_Type;
typedef enum
{
ENVENTOR_PATH_TYPE_EDJ = 0,
ENVENTOR_PATH_TYPE_IMAGE,
ENVENTOR_PATH_TYPE_SOUND,
ENVENTOR_PATH_TYPE_FONT,
ENVENTOR_PATH_TYPE_DATA,
ENVENTOR_PATH_TYPE_LAST
} Enventor_Path_Type;
typedef struct
{
Evas_Coord x;
Evas_Coord y;
float relx;
float rely;
} Enventor_Live_View_Cursor;
typedef struct
{
Evas_Coord w;
Evas_Coord h;
} Enventor_Live_View_Size;
typedef struct
{
int cur_line;
int max_line;
} Enventor_Cursor_Line;
typedef struct
{
Eina_Bool self_changed : 1;
} Enventor_EDC_Modified;
typedef enum {
ENVENTOR_TEMPLATE_INSERT_DEFAULT,
ENVENTOR_TEMPLATE_INSERT_LIVE_EDIT
} Enventor_Template_Insert_Type;
typedef enum {
ENVENTOR_SYNTAX_COLOR_STRING,
ENVENTOR_SYNTAX_COLOR_COMMENT,
ENVENTOR_SYNTAX_COLOR_MACRO,
ENVENTOR_SYNTAX_COLOR_SYMBOL,
ENVENTOR_SYNTAX_COLOR_MAIN_KEYWORD,
ENVENTOR_SYNTAX_COLOR_SUB_KEYWORD,
ENVENTOR_SYNTAX_COLOR_CONSTANT,
ENVENTOR_SYNTAX_COLOR_SCRIPT_FUNC,
ENVENTOR_SYNTAX_COLOR_SCRIPT_KEYWORD,
ENVENTOR_SYNTAX_COLOR_LAST
} Enventor_Syntax_Color_Type;
EAPI int enventor_init(int argc, char **argv);
EAPI int enventor_shutdown(void);
EAPI Evas_Object *enventor_object_add(Evas_Object *parent);
EAPI Eina_List *enventor_object_programs_list_get(Enventor_Object *obj);
EAPI Eina_List *enventor_object_part_states_list_get(Enventor_Object *obj, const char *part);
EAPI Edje_Part_Type enventor_object_part_type_get(Enventor_Object *obj, const char *part_name);
EAPI Eina_List *enventor_object_parts_list_get(Enventor_Object *obj);
EAPI void enventor_object_linenumber_set(Enventor_Object *obj, Eina_Bool linenumber);
EAPI Eina_Bool enventor_object_linenumber_get(const Enventor_Object *obj);
EAPI void enventor_object_smart_undo_redo_set(Enventor_Object *obj, Eina_Bool smart_undo_redo);
EAPI Eina_Bool enventor_object_smart_undo_redo_get(const Enventor_Object *obj);
EAPI void enventor_object_auto_indent_set(Enventor_Object *obj, Eina_Bool auto_indent);
EAPI Eina_Bool enventor_object_auto_indent_get(const Enventor_Object *obj);
EAPI void enventor_object_auto_complete_set(Enventor_Object *obj, Eina_Bool auto_complete);
EAPI Eina_Bool enventor_object_auto_complete_get(const Enventor_Object *obj);
EAPI void enventor_object_auto_complete_list_show(Enventor_Object *obj);
EAPI Eina_Bool enventor_object_path_set(Enventor_Object *obj, Enventor_Path_Type type, Eina_List *pathes);
EAPI const Eina_List *enventor_object_path_get(Enventor_Object *obj, Enventor_Path_Type type);
EAPI void enventor_object_live_view_scale_set(Enventor_Object *obj, double scale);
EAPI void enventor_object_live_view_size_set(Enventor_Object *obj, Evas_Coord w, Evas_Coord h);
EAPI void enventor_object_live_view_size_get(Enventor_Object *obj, Evas_Coord *w, Evas_Coord *h);
EAPI double enventor_object_live_view_scale_get(const Enventor_Object *obj);
EAPI void enventor_object_dummy_parts_set(Enventor_Object *obj, Eina_Bool dummy_parts);
EAPI Eina_Bool enventor_object_ctxpopup_get(const Enventor_Object *obj);
EAPI void enventor_object_ctxpopup_set(Enventor_Object *obj, Eina_Bool ctxpopup);
EAPI Eina_Bool enventor_object_ctxpopup_visible_get(Enventor_Object *obj);
EAPI void enventor_object_ctxpopup_dismiss(Enventor_Object *obj);
EAPI Eina_Bool enventor_object_dummy_parts_get(const Enventor_Object *obj);
EAPI void enventor_object_wireframes_set(Enventor_Object *obj, Eina_Bool wireframes);
EAPI Eina_Bool enventor_object_wireframes_get(const Enventor_Object *obj);
EAPI void enventor_object_part_highlight_set(Enventor_Object *obj, Eina_Bool part_highlight);
EAPI Eina_Bool enventor_object_part_highlight_get(const Enventor_Object *obj);
EAPI void enventor_object_mirror_mode_set(Enventor_Object *obj, Eina_Bool mirror_mode);
EAPI Eina_Bool enventor_object_mirror_mode_get(const Enventor_Object *obj);
EAPI void enventor_object_focus_set(Enventor_Object *obj, Eina_Bool focus);
EAPI Eina_Bool enventor_object_focus_get(const Enventor_Object *obj);
EAPI void enventor_object_font_scale_set(Enventor_Object *obj, double font_scale);
EAPI double enventor_object_font_scale_get(const Enventor_Object *obj);
EAPI void enventor_object_font_set(Enventor_Object *obj, const char *font_name, const char *font_style);
EAPI void enventor_object_font_get(Enventor_Object *obj, const char **font_name, const char **font_style);
EAPI void enventor_object_syntax_color_set(Enventor_Object *obj, Enventor_Syntax_Color_Type color_type, const char *val);
EAPI const char *enventor_object_syntax_color_get(Enventor_Object *obj, Enventor_Syntax_Color_Type color_type);
EAPI Eo *enventor_object_live_view_get(Enventor_Object *obj);
EAPI void enventor_object_disabled_set(Enventor_Object *obj, Eina_Bool disabled);
EAPI void enventor_object_program_run(Enventor_Object *obj, const char *program);
EAPI void enventor_object_programs_stop(Enventor_Object *obj);
EAPI void enventor_object_keyword_reference_show(Enventor_Object *obj);
EAPI double enventor_object_base_scale_get(Enventor_Object *obj);
EAPI Enventor_Item *enventor_object_main_item_set(Evas_Object *obj, const char *file);
EAPI Enventor_Item *enventor_object_sub_item_add(Evas_Object *obj, const char *file);
EAPI Enventor_Item *enventor_object_main_item_get(const Evas_Object *obj);
EAPI const Eina_List *enventor_object_sub_items_get(const Evas_Object *obj);
EAPI Evas_Object *enventor_item_editor_get(const Enventor_Item *it);
EAPI const char *enventor_item_file_get(const Enventor_Item *it);
EAPI Enventor_Item *enventor_object_focused_item_get(const Evas_Object *obj);
EAPI Eina_Bool enventor_item_represent(Enventor_Item *it);
EAPI int enventor_item_max_line_get(const Enventor_Item *it);
EAPI Eina_Bool enventor_item_line_goto(Enventor_Item *it, int line);
EAPI Eina_Bool enventor_item_syntax_color_full_apply(Enventor_Item *it, Eina_Bool force);
EAPI Eina_Bool enventor_item_syntax_color_partial_apply(Enventor_Item *it, double interval);
EAPI Eina_Bool enventor_item_select_region_set(Enventor_Item *it, int start, int end);
EAPI Eina_Bool enventor_item_select_none(Enventor_Item *it);
EAPI Eina_Bool enventor_item_cursor_pos_set(Enventor_Item *it, int position);
EAPI int enventor_item_cursor_pos_get(const Enventor_Item *it);
EAPI const char *enventor_item_selection_get(const Enventor_Item *it);
EAPI Eina_Bool enventor_item_text_insert(Enventor_Item *it, const char *text);
EAPI const char * enventor_item_text_get(const Enventor_Item *it);
EAPI Eina_Bool enventor_item_line_delete(Enventor_Item *it);
EAPI Eina_Bool enventor_item_file_save(Enventor_Item *it, const char *file);
EAPI Eina_Bool enventor_item_modified_get(const Enventor_Item *it);
EAPI void enventor_item_modified_set(Enventor_Item *it, Eina_Bool modified);
EAPI Eina_Bool enventor_item_del(Enventor_Item *it);
EAPI Eina_Bool enventor_item_template_insert(Enventor_Item *it, char *syntax, size_t n);
EAPI Eina_Bool enventor_item_template_part_insert(Enventor_Item *it, Edje_Part_Type part, Enventor_Template_Insert_Type insert_type, Eina_Bool fixed_w, Eina_Bool fixed_h, char *rel1_x_to, char *rel1_y_to, char *rel2_x_to, char *rel2_y_to, float align_x, float align_y, int min_w, int min_h, float rel1_x, float rel1_y, float rel2_x,float rel2_y, char *syntax, size_t n);
EAPI Eina_Bool enventor_item_redo(Enventor_Item *it);
EAPI Eina_Bool enventor_item_undo(Enventor_Item *it);
EAPI Eina_List *enventor_item_group_list_get(Enventor_Item *it);
#ifdef __cplusplus
}
#endif
#endif

110
src/lib/Enventor.h.in Normal file
View File

@ -0,0 +1,110 @@
#ifndef ENVENTOR_H
#define ENVENTOR_H
#ifndef ENVENTOR_BETA_API_SUPPORT
#error "Enventor APIs still unstable. It's under BETA and changeable!! If you really want to use the APIs, Please define ENVENTOR_BETA_API_SUPPORT"
#endif
#ifdef __cplusplus
extern "C"
{
#endif
#include <Efl_Config.h>
#include <Elementary.h>
/***
* Compatible ABI for Win32
***/
#ifdef _WIN32
# ifdef EAPI
# undef EAPI
# endif
# ifdef ENVENTOR_WIN32_BUILD_SUPPORT
# define EAPI __declspec(dllexport)
# else
# define EAPI __declspec(dllimport)
# endif
# ifdef EOAPI
# undef EOAPI
# endif
#define EOAPI EAPI
#endif
typedef enum
{
ENVENTOR_CTXPOPUP_TYPE_SLIDER = 0,
ENVENTOR_CTXPOPUP_TYPE_LIST,
ENVENTOR_CTXPOPUP_TYPE_TOGGLE,
ENVENTOR_CTXPOPUP_TYPE_IMAGE
} Enventor_Ctxpopup_Type;
typedef enum
{
ENVENTOR_PATH_TYPE_EDJ = 0,
ENVENTOR_PATH_TYPE_IMAGE,
ENVENTOR_PATH_TYPE_SOUND,
ENVENTOR_PATH_TYPE_FONT,
ENVENTOR_PATH_TYPE_DATA,
ENVENTOR_PATH_TYPE_LAST
} Enventor_Path_Type;
typedef struct
{
Evas_Coord x;
Evas_Coord y;
float relx;
float rely;
} Enventor_Live_View_Cursor;
typedef struct
{
Evas_Coord w;
Evas_Coord h;
} Enventor_Live_View_Size;
typedef struct
{
int cur_line;
int max_line;
} Enventor_Cursor_Line;
typedef struct
{
Eina_Bool self_changed : 1;
} Enventor_EDC_Modified;
typedef enum {
ENVENTOR_TEMPLATE_INSERT_DEFAULT,
ENVENTOR_TEMPLATE_INSERT_LIVE_EDIT
} Enventor_Template_Insert_Type;
typedef enum {
ENVENTOR_SYNTAX_COLOR_STRING,
ENVENTOR_SYNTAX_COLOR_COMMENT,
ENVENTOR_SYNTAX_COLOR_MACRO,
ENVENTOR_SYNTAX_COLOR_SYMBOL,
ENVENTOR_SYNTAX_COLOR_MAIN_KEYWORD,
ENVENTOR_SYNTAX_COLOR_SUB_KEYWORD,
ENVENTOR_SYNTAX_COLOR_CONSTANT,
ENVENTOR_SYNTAX_COLOR_SCRIPT_FUNC,
ENVENTOR_SYNTAX_COLOR_SCRIPT_KEYWORD,
ENVENTOR_SYNTAX_COLOR_LAST
} Enventor_Syntax_Color_Type;
EAPI int enventor_init(int argc, char **argv);
EAPI int enventor_shutdown(void);
#ifndef EFL_NOLEGACY_API_SUPPORT
#include "Enventor_Legacy.h"
#endif
#ifdef EFL_EO_API_SUPPORT
#include "Enventor_Eo.h"
#endif
#ifdef __cplusplus
}
#endif
#endif

19
src/lib/Enventor_Eo.h Normal file
View File

@ -0,0 +1,19 @@
/***
* Compatible ABI for Win32
***/
#ifdef _WIN32
# ifdef EAPI
# undef EAPI
# endif
# ifdef EOAPI
# undef EOAPI
# endif
# ifdef ENVENTOR_WIN32_BUILD_SUPPORT
# define EAPI __declspec(dllexport)
# define EOAPI __declspec(dllexport)
# else
# define EAPI __declspec(dllimport)
# define EOAPI __declspec(dllimport)
# endif
#endif
#include "enventor_object.eo.h"

36
src/lib/Enventor_Legacy.h Normal file
View File

@ -0,0 +1,36 @@
typedef struct _Enventor_Item_Data Enventor_Item;
EAPI Evas_Object *enventor_object_add(Evas_Object *parent);
//FIXME: Eofy.
EAPI Enventor_Item *enventor_object_main_item_set(Evas_Object *obj, const char *file);
EAPI Enventor_Item *enventor_object_sub_item_add(Evas_Object *obj, const char *file);
EAPI Enventor_Item *enventor_object_main_item_get(const Evas_Object *obj);
EAPI const Eina_List *enventor_object_sub_items_get(const Evas_Object *obj);
EAPI Evas_Object *enventor_item_editor_get(const Enventor_Item *it);
EAPI const char *enventor_item_file_get(const Enventor_Item *it);
EAPI Enventor_Item *enventor_object_focused_item_get(const Evas_Object *obj);
EAPI Eina_Bool enventor_item_represent(Enventor_Item *it);
EAPI int enventor_item_max_line_get(const Enventor_Item *it);
EAPI Eina_Bool enventor_item_line_goto(Enventor_Item *it, int line);
EAPI Eina_Bool enventor_item_syntax_color_full_apply(Enventor_Item *it, Eina_Bool force);
EAPI Eina_Bool enventor_item_syntax_color_partial_apply(Enventor_Item *it, double interval);
EAPI Eina_Bool enventor_item_select_region_set(Enventor_Item *it, int start, int end);
EAPI Eina_Bool enventor_item_select_none(Enventor_Item *it);
EAPI Eina_Bool enventor_item_cursor_pos_set(Enventor_Item *it, int position);
EAPI int enventor_item_cursor_pos_get(const Enventor_Item *it);
EAPI const char *enventor_item_selection_get(const Enventor_Item *it);
EAPI Eina_Bool enventor_item_text_insert(Enventor_Item *it, const char *text);
EAPI const char * enventor_item_text_get(const Enventor_Item *it);
EAPI Eina_Bool enventor_item_line_delete(Enventor_Item *it);
EAPI Eina_Bool enventor_item_file_save(Enventor_Item *it, const char *file);
EAPI Eina_Bool enventor_item_modified_get(const Enventor_Item *it);
EAPI void enventor_item_modified_set(Enventor_Item *it, Eina_Bool modified);
EAPI Eina_Bool enventor_item_del(Enventor_Item *it);
EAPI Eina_Bool enventor_item_template_insert(Enventor_Item *it, char *syntax, size_t n);
EAPI Eina_Bool enventor_item_template_part_insert(Enventor_Item *it, Edje_Part_Type part, Enventor_Template_Insert_Type insert_type, Eina_Bool fixed_w, Eina_Bool fixed_h, char *rel1_x_to, char *rel1_y_to, char *rel2_x_to, char *rel2_y_to, float align_x, float align_y, int min_w, int min_h, float rel1_x, float rel1_y, float rel2_x,float rel2_y, char *syntax, size_t n);
EAPI Eina_Bool enventor_item_redo(Enventor_Item *it);
EAPI Eina_Bool enventor_item_undo(Enventor_Item *it);
EAPI Eina_List *enventor_item_group_list_get(Enventor_Item *it);
#include "enventor_object.eo.legacy.h"

View File

@ -3,6 +3,12 @@ MAINTAINERCLEANFILES = Makefile.in
CLEANFILES =
EOLIAN_FLAGS = @DEPS_EOLIAN_FLAGS@ \
-I$(top_srcdir)/src/lib
include $(top_srcdir)/Makefile_Eolian_Helper.am
include $(top_srcdir)/Makefile_Eolian_Cxx_Helper.am
AM_CPPFLAGS = -DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" \
-DPACKAGE_BIN_DIR=\"$(bindir)\" \
-DPACKAGE_LIB_DIR=\"$(libdir)\" \
@ -13,7 +19,11 @@ AM_CPPFLAGS = -DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" \
lib_LTLIBRARIES = libenventor.la
includes_HEADERS = \
Enventor.h
Enventor_Legacy.h \
Enventor.h \
Enventor_Eo.h \
enventor_object.eo.h \
enventor_object.eo.legacy.h
includesdir = $(includedir)/enventor-@ENVENTOR_VERSION_MAJOR@
libenventor_la_SOURCES = \
@ -42,3 +52,12 @@ libenventor_la_CFLAGS = @ENVENTOR_CFLAGS@
libenventor_la_LIBADD = @ENVENTOR_LIBS@
libenventor_la_LDFLAGS = $(LTLIBINTL) -version-info @version_info@ -no-undefined
BUILT_SOURCES = \
enventor_object.eo.c \
enventor_object.eo.h \
enventor_object.eo.legacy.h
enventoreolianfilesdir = $(datadir)/eolian/include/enventor-@ENVENTOR_VERSION_MAJOR@
enventoreolianfiles_DATA = enventor_object.eo
EXTRA_DIST = ${enventoreolianfiles_DATA}

View File

@ -28,7 +28,7 @@ typedef struct autocomp_s
{
char queue[QUEUE_SIZE];
int queue_pos;
lexem *lexem_root;
const lexem *lexem_root;
lexem *lexem_ptr;
Eet_File *source_file;
edit_data *ed;
@ -98,7 +98,7 @@ autocomp_load(autocomp_data *ad)
ad->source_file = eet_open(buf, EET_FILE_MODE_READ);
ad->lexem_root = (lexem *)eet_data_read(ad->source_file, lex_desc, "node");
ad->lexem_ptr = ad->lexem_root;
ad->lexem_ptr = (lexem *)ad->lexem_root;
}
static void
@ -110,17 +110,25 @@ init_thread_cb(void *data, Ecore_Thread *thread EINA_UNUSED)
}
static void
lexem_tree_free(lexem *node)
lexem_tree_free(lexem **root)
{
if (!node) return;
lexem *data = NULL;
Eina_List *l = NULL;
lexem *child;
EINA_LIST_FREE(node->nodes, child)
lexem_tree_free(child);
if (!(*root)) return;
free(node->txt);
free(node->name);
free(node);
EINA_LIST_FOREACH((*root)->nodes, l, data)
{
if (data->nodes)
lexem_tree_free(&data);
}
EINA_LIST_FREE((*root)->nodes, data)
{
free(data->txt);
free(data->name);
free(data);
}
}
static void
@ -136,7 +144,7 @@ context_lexem_thread_cb(void *data, Ecore_Thread *thread)
Eina_List *l = NULL;
Eina_List *nodes = td->ad->lexem_root->nodes;
td->result = td->ad->lexem_root;
td->result = (lexem *)td->ad->lexem_root;
int i = 0;
int k = 0;
int depth = 0;
@ -320,12 +328,7 @@ context_lexem_thread_end_cb(void *data, Ecore_Thread *thread EINA_UNUSED)
{
ctx_lexem_td *td = (ctx_lexem_td *)data;
if (!td->ad || (td->ad->cltd != td))
{
free(td->utf8);
free(td);
return;
}
if (!td->ad || (td->ad->cltd != td)) return;
td->ad->lexem_ptr = td->result;
@ -347,7 +350,7 @@ context_lexem_get(autocomp_data *ad, Evas_Object *entry, Eina_Bool list_show)
const char *text = elm_entry_entry_get(entry);
if (!text)
{
ad->lexem_ptr = ad->lexem_root;
ad->lexem_ptr = (lexem *)ad->lexem_root;
return;
}
@ -380,7 +383,7 @@ context_changed(autocomp_data *ad, Evas_Object *edit)
if (!cursor_position)
{
ad->lexem_ptr = ad->lexem_root;
ad->lexem_ptr = (lexem *)ad->lexem_root;
return;
}
@ -897,18 +900,15 @@ autocomp_target_set(edit_data *ed)
if (ad->ed)
{
entry = edit_entry_get(ad->ed);
if (entry)
{
evas_object_smart_callback_del(entry, "changed,user", entry_changed_cb);
evas_object_smart_callback_del(entry, "cursor,changed",
entry_cursor_changed_cb);
evas_object_smart_callback_del(entry, "cursor,changed,manual",
entry_cursor_changed_manual_cb);
evas_object_smart_callback_del(entry, "unfocused", anchor_unfocused_cb);
evas_object_smart_callback_del(entry, "press", entry_press_cb);
evas_object_event_callback_del(entry, EVAS_CALLBACK_MOVE,
entry_move_cb);
}
evas_object_smart_callback_del(entry, "changed,user", entry_changed_cb);
evas_object_smart_callback_del(entry, "cursor,changed",
entry_cursor_changed_cb);
evas_object_smart_callback_del(entry, "cursor,changed,manual",
entry_cursor_changed_manual_cb);
evas_object_smart_callback_del(entry, "unfocused", anchor_unfocused_cb);
evas_object_smart_callback_del(entry, "press", entry_press_cb);
evas_object_event_callback_del(entry, EVAS_CALLBACK_MOVE,
entry_move_cb);
evas_object_del(ad->anchor);
ad->anchor = NULL;
ad->ed = NULL;
@ -1005,7 +1005,7 @@ autocomp_term(void)
evas_object_del(ad->event_rect);
evas_object_del(ad->anchor);
lexem_tree_free(ad->lexem_root);
lexem_tree_free((lexem **)&ad->lexem_root);
eet_data_descriptor_free(lex_desc);
eet_close(ad->source_file);

View File

@ -61,9 +61,7 @@ strbuf_path_get(build_data *bd, Enventor_Path_Type type, const char *syntax)
EINA_LIST_FOREACH(bd->pathes_list[type], l, path)
{
eina_strbuf_append(strbuf, syntax);
eina_strbuf_append(strbuf, "\"");
eina_strbuf_append(strbuf, path);
eina_strbuf_append(strbuf, "\"");
}
return strbuf;
}
@ -101,7 +99,7 @@ build_cmd_set(build_data *bd)
}
eina_strbuf_append_printf(strbuf,
"edje_cc -fastcomp \"%s\" \"%s\" -id \"%s/images\" -sd \"%s/sounds\" -fd \"%s/fonts\" -dd \"%s/data\" %s %s %s %s -beta",
"edje_cc -fastcomp %s %s -id %s/images -sd %s/sounds -fd %s/fonts -dd %s/data %s %s %s %s -beta",
bd->edc_path,
(char *) eina_list_data_get(bd->pathes_list[ENVENTOR_PATH_TYPE_EDJ]),
elm_app_data_dir_get(),

View File

@ -91,49 +91,15 @@ update_preset_colors(Eina_Bool update)
}
}
static int
array_data_idx(const Eina_Array *array, void *data)
{
Eina_Stringshare *array_data;
Eina_Array_Iterator itr;
unsigned int idx;
if (!array) return -1;
EINA_ARRAY_ITER_NEXT(array, idx, array_data, itr)
{
if (array_data == data)
return idx;
}
return -1;
}
static void
ctxpopup_it_cb(void *data, Evas_Object *obj, void *event_info)
{
ctxpopup_data *ctxdata = data;
Elm_Object_Item *it = event_info;
const char *text = elm_object_item_text_get(it);
const Eina_Stringshare *append_str = NULL;
//Append different string to each candidate list.
if (ctxdata->attr->use_append_str_array)
{
int idx = array_data_idx(ctxdata->attr->strs, (void *)text);
if (idx != -1)
{
append_str = (const Eina_Stringshare *)
eina_array_data_get(ctxdata->attr->append_str_array, idx);
}
}
//Append same string to all candidate lists.
else
{
append_str = ctxdata->attr->append_str;
}
snprintf(ctxdata->candidate, sizeof(ctxdata->candidate), "%s %s%s",
ctxdata->attr->prepend_str, text, append_str);
ctxdata->attr->prepend_str, text, ctxdata->attr->append_str);
ctxdata->changed_cb(ctxdata->data, obj, ctxdata->candidate);
elm_ctxpopup_dismiss(obj);

View File

@ -199,7 +199,6 @@ layout_geom_changed_cb(void *data, Evas *evas EINA_UNUSED,
evas_object_move(po->obj, lx + x, ly + y);
}
}
static Eina_Bool
animator_cb(void *data)
{

View File

@ -9,7 +9,7 @@
#include "enventor_private.h"
//FIXME: Make flexible
const int MAX_LINE_DIGIT_CNT = 12;
const int MAX_LINE_DIGIT_CNT = 10;
const int SYNTAX_COLOR_SPARE_LINES = 42;
const double SYNTAX_COLOR_DEFAULT_TIME = 0.25;
const double SYNTAX_COLOR_SHORT_TIME = 0.025;
@ -18,6 +18,7 @@ typedef struct syntax_color_thread_data_s
{
Ecore_Thread *thread;
edit_data *ed;
char *text;
const char *translated;
} syntax_color_td;
@ -25,8 +26,7 @@ struct editor_s
{
Evas_Object *en_edit;
Evas_Object *en_line;
Evas_Object *scr_edit;
Evas_Object *scr_line;
Evas_Object *scroller;
Evas_Object *layout;
Evas_Object *ctxpopup;
Enventor_Object *enventor;
@ -42,7 +42,6 @@ struct editor_s
int error_line;
int syntax_color_lock;
int cursor_pos;
int ctxpopup_cursor_pos;
Evas_Coord scroller_h;
struct {
@ -94,7 +93,7 @@ visible_text_region_get(edit_data *ed, int *from_line, int *to_line)
Evas_Coord region_y, region_h;
Evas_Coord cursor_h;
elm_scroller_region_get(ed->scr_edit, NULL, &region_y, NULL, &region_h);
elm_scroller_region_get(ed->scroller, NULL, &region_y, NULL, &region_h);
elm_entry_cursor_geometry_get(ed->en_edit, NULL, NULL, NULL, &cursor_h);
int from = (region_y / cursor_h);
@ -226,20 +225,11 @@ bracket_highlight(edit_data *ed, Evas_Object *tb)
evas_textblock_cursor_free(cur1);
}
static Eina_Bool
static void
syntax_color_apply(edit_data *ed, Eina_Bool partial)
{
Evas_Object *tb = elm_entry_textblock_get(ed->en_edit);
char *text = (char *) evas_object_textblock_text_markup_get(tb);
if (!text) return EINA_FALSE;
int text_len = strlen(text);
//FIXME: We encountered a syntax coloring issue that won't be applied
//at the opening an edc script. The situation condition is below,
//and we try syntax coloring again in that case. Work around logic,
//but it works.
if (text_len == 0) return EINA_FALSE;
int from_line = 1;
int to_line = -1;
@ -248,13 +238,13 @@ syntax_color_apply(edit_data *ed, Eina_Bool partial)
char *from = NULL;
char *to = NULL;
char *utf8 = (char *) color_cancel(NULL, syntax_color_data_get(ed->sh), text,
text_len, from_line, to_line, &from,
strlen(text), from_line, to_line, &from,
&to);
if (!utf8) return EINA_TRUE;
if (!utf8) return;
const char *translated = color_apply(NULL, syntax_color_data_get(ed->sh),
utf8, strlen(utf8), from, to);
if (!translated) return EINA_TRUE;
if (!translated) return;
/* I'm not sure this will be problem.
But it can avoid entry_object_text_escaped_set() in Edje.
@ -265,18 +255,14 @@ syntax_color_apply(edit_data *ed, Eina_Bool partial)
error_highlight(ed, tb);
bracket_highlight(ed, tb);
entry_recover(ed, cursor_pos, sel_cur_begin, sel_cur_end);
return EINA_TRUE;
}
static Eina_Bool
syntax_color_timer_cb(void *data)
{
edit_data *ed = data;
if (!syntax_color_apply(ed, EINA_TRUE))
{
return ECORE_CALLBACK_RENEW;
}
if (!color_ready(syntax_color_data_get(ed->sh))) return ECORE_CALLBACK_RENEW;
syntax_color_apply(ed, EINA_TRUE);
ed->syntax_color_timer = NULL;
return ECORE_CALLBACK_CANCEL;
}
@ -302,19 +288,8 @@ static void
syntax_color_thread_cb(void *data, Ecore_Thread *thread)
{
syntax_color_td *td = data;
ecore_thread_main_loop_begin();
if (!td->ed)
{
ecore_thread_main_loop_end();
return;
}
Evas_Object *tb = elm_entry_textblock_get(td->ed->en_edit);
const char *text = (char *) evas_object_textblock_text_markup_get(tb);
ecore_thread_main_loop_end();
char *utf8 = (char *) color_cancel(thread, syntax_color_data_get(td->ed->sh),
text, strlen(text), -1, -1, NULL,
td->text, strlen(td->text), -1, -1, NULL,
NULL);
if (!utf8) return;
td->translated = color_apply(thread, syntax_color_data_get(td->ed->sh), utf8,
@ -431,6 +406,7 @@ edit_changed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
Elm_Entry_Change_Info *info = event_info;
edit_data *ed = data;
edit_changed_set(ed, EINA_TRUE);
parser_macro_update(ed->pd, EINA_TRUE);
Eina_Bool syntax_color = EINA_TRUE;
ed->error_line = -1;
@ -454,7 +430,7 @@ edit_changed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
parser_line_cnt_get(ed->pd, info->change.insert.content);
}
if (enventor_object_auto_indent_get(ed->enventor))
if (enventor_obj_auto_indent_get(ed->enventor))
{
increase =
indent_insert_apply(syntax_indent_data_get(ed->sh),
@ -465,7 +441,7 @@ edit_changed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
}
else
{
if (enventor_object_auto_indent_get(ed->enventor))
if (enventor_obj_auto_indent_get(ed->enventor))
{
indent_delete_apply(syntax_indent_data_get(ed->sh),
info->change.del.content, ed->cur_line);
@ -523,9 +499,7 @@ ctxpopup_candidate_changed_cb(void *data, Evas_Object *obj EINA_UNUSED,
char *ch = NULL;
int cur_pos, end_pos;
int i;
cur_pos = ed->ctxpopup_cursor_pos;
elm_entry_cursor_pos_set(ed->en_edit, cur_pos);
cur_pos = elm_entry_cursor_pos_get(ed->en_edit);
elm_entry_cursor_line_end_set(ed->en_edit);
end_pos = elm_entry_cursor_pos_get(ed->en_edit);
@ -602,7 +576,7 @@ preview_img_relay_show(edit_data *ed, Evas_Object *ctxpopup, Eina_Bool next)
//Limit the ctxpopup position in the scroller vertical zone.
Evas_Coord scrl_y, scrl_h;
evas_object_geometry_get(ed->scr_edit, NULL, &scrl_y, NULL, &scrl_h);
evas_object_geometry_get(ed->scroller, NULL, &scrl_y, NULL, &scrl_h);
if (y > (scrl_y + scrl_h)) y = (scrl_y + scrl_h);
else if (y < scrl_y) y = scrl_y;
@ -721,8 +695,6 @@ candidate_list_show(edit_data *ed, char *text, char *cur, char *selected)
parser_attribute_value_set(attr, cur);
ed->ctxpopup_cursor_pos = elm_entry_cursor_pos_get(ed->en_edit);
//Show up the list of the types
Enventor_Ctxpopup_Type type;
Evas_Object *ctxpopup =
@ -751,7 +723,7 @@ edit_cursor_double_clicked_cb(void *data, Evas_Object *obj,
edit_data *ed = data;
if (ed->ctrl_pressed) return;
if (!enventor_object_ctxpopup_get(ed->enventor)) return;
if (!enventor_obj_ctxpopup_get(ed->enventor)) return;
char *selected = (char *) elm_entry_selection_get(obj);
if (!selected) return;
@ -909,11 +881,7 @@ syntax_color_full_update(edit_data *ed, Eina_Bool thread)
if (thread)
{
if (ed->sctd)
{
ecore_thread_cancel(ed->sctd->thread);
ed->sctd->ed = NULL;
}
if (ed->sctd) ecore_thread_cancel(ed->sctd->thread);
ed->sctd = calloc(1, sizeof(syntax_color_td));
if (!ed->sctd)
@ -922,6 +890,8 @@ syntax_color_full_update(edit_data *ed, Eina_Bool thread)
return;
}
ed->sctd->ed = ed;
Evas_Object *tb = elm_entry_textblock_get(ed->en_edit);
ed->sctd->text = (char *) evas_object_textblock_text_markup_get(tb);
ed->sctd->thread =
ecore_thread_run(syntax_color_thread_cb,
syntax_color_thread_end_cb,
@ -939,13 +909,7 @@ scroller_scroll_cb(void *data, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
edit_data *ed = data;
Evas_Coord x, y, w, h;
syntax_color_partial_update(ed, SYNTAX_COLOR_SHORT_TIME);
elm_scroller_region_get(ed->scr_edit, &x, &y, NULL, NULL);
evas_object_geometry_get(ed->scr_edit, NULL, NULL, &w, &h);
elm_scroller_region_show(ed->scr_line, x, y, w, h);
}
static void
@ -979,30 +943,6 @@ scroller_vbar_unpress_cb(void *data, Evas_Object *obj EINA_UNUSED,
syntax_color_partial_update(ed, SYNTAX_COLOR_SHORT_TIME);
}
static void
scroller_hbar_show_cb(void *data, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED,
const char *source EINA_UNUSED)
{
edit_data *ed = data;
if (!ed->layout)
return;
elm_object_signal_emit(ed->layout, "elm,state,linedummy,show", "");
}
static void
scroller_hbar_hide_cb(void *data, Evas_Object *obj EINA_UNUSED,
const char *emission EINA_UNUSED,
const char *source EINA_UNUSED)
{
edit_data *ed = data;
if (!ed->layout)
return;
elm_object_signal_emit(ed->layout, "elm,state,linedummy,hide", "");
}
static void
edit_quick_jump(edit_data *ed)
{
@ -1034,6 +974,10 @@ edit_quick_jump(edit_data *ed)
Evas_Textblock_Cursor *cur2 = evas_object_textblock_cursor_new(textblock);
evas_textblock_cursor_line_set(cur2, line2);
if (max) evas_textblock_cursor_line_char_last(cur2);
int cur1_pos, cur2_pos;
cur1_pos = evas_textblock_cursor_pos_get(cur1);
cur2_pos = evas_textblock_cursor_pos_get(cur2);
char *content = evas_textblock_cursor_range_text_get(cur1, cur2,
EVAS_TEXTBLOCK_TEXT_MARKUP);
char *utf8 = elm_entry_markup_to_utf8(content);
@ -1049,7 +993,7 @@ edit_quick_jump(edit_data *ed)
name_begin++;
char *name_end = strstr(name_begin, "\"");
if (!name_end) goto end;
file_link = eina_strndup(name_begin, name_end - name_begin);
file_link = strndup(name_begin, name_end - name_begin);
if (file_link)
{
//Compose the absolute file path.
@ -1057,7 +1001,7 @@ edit_quick_jump(edit_data *ed)
if (!file_name) goto end;
char *file_path =
eina_strndup(ed->filepath, (file_name - ed->filepath));
strndup(ed->filepath, (file_name - ed->filepath));
if (!file_path) goto end;
char buf[PATH_MAX];
@ -1113,7 +1057,7 @@ edit_edc_load(edit_data *ed, const char *file_path)
= indent_text_check(id, (const char *)utf8_edit);
//Set edc text to entry.
if (enventor_object_auto_indent_get(ed->enventor) && !indent_correct)
if (enventor_obj_auto_indent_get(ed->enventor) && !indent_correct)
//Create indented markup text from utf8 text of EDC file.
markup_edit = indent_text_create(id, (const char *)utf8_edit,
&line_num);
@ -1121,13 +1065,13 @@ edit_edc_load(edit_data *ed, const char *file_path)
markup_edit = elm_entry_utf8_to_markup(utf8_edit);
if (!markup_edit) goto err;
elm_entry_entry_set(ed->en_edit, markup_edit);
if (enventor_object_auto_indent_get(ed->enventor) && !indent_correct)
if (enventor_obj_auto_indent_get(ed->enventor) && !indent_correct)
edit_changed_set(ed, EINA_TRUE);
free(markup_edit);
//Append line numbers.
if (!eina_strbuf_append_char(strbuf_line, '1')) goto err;
if (enventor_object_auto_indent_get(ed->enventor) && !indent_correct)
if (enventor_obj_auto_indent_get(ed->enventor) && !indent_correct)
{
int num = 2;
//Use line_num given by indent_text_create().
@ -1479,14 +1423,6 @@ edit_cur_indent_depth_get(edit_data *ed)
return indent_space_get(syntax_indent_data_get(ed->sh));
}
static void
edit_obj_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
edit_data *ed = data;
ed->en_edit = NULL;
}
edit_data *
edit_init(Enventor_Object *enventor, Enventor_Item *it)
{
@ -1502,55 +1438,38 @@ edit_init(Enventor_Object *enventor, Enventor_Item *it)
ed->bracket.left = -1;
ed->bracket.right = -1;
//Layout
Evas_Object *layout = elm_layout_add(enventor);
elm_layout_file_set(layout, EDJE_PATH, "edit_layout");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
//EDC Editor Scroller
Evas_Object *scr_edit = elm_scroller_add(layout);
elm_scroller_policy_set(scr_edit, ELM_SCROLLER_POLICY_AUTO,
//Scroller
Evas_Object *scroller = elm_scroller_add(enventor);
evas_object_smart_member_add(scroller, enventor);
elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_AUTO,
ELM_SCROLLER_POLICY_AUTO);
elm_object_focus_allow_set(scr_edit, EINA_FALSE);
evas_object_smart_callback_add(scr_edit, "scroll,up", scroller_scroll_cb,
elm_object_focus_allow_set(scroller, EINA_FALSE);
evas_object_smart_callback_add(scroller, "scroll,up", scroller_scroll_cb,
ed);
evas_object_smart_callback_add(scr_edit, "scroll,down", scroller_scroll_cb,
evas_object_smart_callback_add(scroller, "scroll,down", scroller_scroll_cb,
ed);
evas_object_smart_callback_add(scr_edit, "vbar,press",
evas_object_smart_callback_add(scroller, "vbar,press",
scroller_vbar_press_cb, ed);
evas_object_smart_callback_add(scr_edit, "vbar,unpress",
evas_object_smart_callback_add(scroller, "vbar,unpress",
scroller_vbar_unpress_cb, ed);
evas_object_event_callback_add(scr_edit, EVAS_CALLBACK_RESIZE,
evas_object_event_callback_add(scroller, EVAS_CALLBACK_RESIZE,
scroller_resize_cb, ed);
edje_object_signal_callback_add(elm_layout_edje_get(scr_edit),
"elm,action,show,hbar", "elm",
scroller_hbar_show_cb, ed);
edje_object_signal_callback_add(elm_layout_edje_get(scr_edit),
"elm,action,hide,hbar", "elm",
scroller_hbar_hide_cb, ed);
evas_object_size_hint_weight_set(scr_edit, EVAS_HINT_EXPAND,
evas_object_size_hint_weight_set(scroller, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(scr_edit, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(layout, "elm.swallow.edit", scr_edit);
evas_object_size_hint_align_set(scroller, EVAS_HINT_FILL, EVAS_HINT_FILL);
//This is hackish call to not change scroller color by widget.
evas_object_data_set(scr_edit, "_elm_leaveme", (void *)1);
evas_object_data_set(scroller, "_elm_leaveme", (void *)1);
//Line number Scroller
Evas_Object *scr_line = elm_scroller_add(layout);
elm_scroller_content_min_limit(scr_line, 15, 0);
elm_scroller_policy_set(scr_line, ELM_SCROLLER_POLICY_OFF,
ELM_SCROLLER_POLICY_OFF);
elm_object_focus_allow_set(scr_line, EINA_FALSE);
evas_object_size_hint_weight_set(scr_line, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(scr_line, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(layout, "elm.swallow.linenumber", scr_line);
//Layout
Evas_Object *layout = elm_layout_add(scroller);
elm_layout_file_set(layout, EDJE_PATH, "edit_layout");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_content_set(scroller, layout);
//Line Number Entry
Evas_Object *en_line = elm_entry_add(scr_line);
Evas_Object *en_line = elm_entry_add(layout);
elm_object_style_set(en_line, "enventor");
evas_object_color_set(en_line, 101, 101, 101, 255);
elm_entry_editable_set(en_line, EINA_FALSE);
@ -1558,10 +1477,10 @@ edit_init(Enventor_Object *enventor, Enventor_Item *it)
elm_object_focus_allow_set(en_line, EINA_FALSE);
evas_object_size_hint_weight_set(en_line, 0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(en_line, 0, EVAS_HINT_FILL);
elm_object_content_set(scr_line, en_line);
elm_object_part_content_set(layout, "elm.swallow.linenumber", en_line);
//EDC Editor Entry
Evas_Object *en_edit = elm_entry_add(scr_edit);
Evas_Object *en_edit = elm_entry_add(layout);
elm_object_style_set(en_edit, "enventor");
elm_object_focus_highlight_style_set(en_edit, "blank");
elm_entry_cnp_mode_set(en_edit, ELM_CNP_MODE_PLAINTEXT);
@ -1577,12 +1496,11 @@ edit_init(Enventor_Object *enventor, Enventor_Item *it)
edit_selection_cleared_cb, ed);
evas_object_smart_callback_add(en_edit, "selection,start",
edit_selection_start_cb, ed);
evas_object_event_callback_add(en_edit, EVAS_CALLBACK_DEL, edit_obj_del_cb, ed);
evas_object_size_hint_weight_set(en_edit, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(en_edit, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_focus_set(en_edit, EINA_TRUE);
elm_object_content_set(scr_edit, en_edit);
elm_object_part_content_set(layout, "elm.swallow.edit", en_edit);
/* FIXME: This is a temporary patch to remove focus highlight on template
selection button of new file open. (enventor -t)
@ -1590,8 +1508,7 @@ edit_init(Enventor_Object *enventor, Enventor_Item *it)
its visibility is set with false. */
evas_object_show(en_edit);
ed->scr_edit = scr_edit;
ed->scr_line = scr_line;
ed->scroller = scroller;
ed->en_line = en_line;
ed->en_edit = en_edit;
ed->layout = layout;
@ -1617,7 +1534,7 @@ Evas_Object *
edit_obj_get(edit_data *ed)
{
if (!ed) return NULL;
return ed->layout;
return ed->scroller;
}
void
@ -1635,7 +1552,7 @@ edit_term(edit_data *ed)
ed->sctd->ed = NULL;
}
ecore_timer_del(ed->syntax_color_timer);
evas_object_del(ed->layout);
evas_object_del(ed->scroller);
eina_stringshare_del(ed->filepath);
free(ed);
@ -1671,8 +1588,7 @@ edit_font_scale_set(edit_data *ed, double font_scale)
{
if (!ed) return;
elm_object_scale_set(ed->en_line, font_scale);
elm_object_scale_set(ed->en_edit, font_scale);
elm_object_scale_set(ed->layout, font_scale);
syntax_color_partial_update(ed, 0);
}
@ -1717,14 +1633,10 @@ edit_max_line_get(edit_data *ed)
void
edit_goto(edit_data *ed, int line)
{
int cursor_y;
elm_entry_select_none(ed->en_edit);
Evas_Object *tb = elm_entry_textblock_get(ed->en_edit);
Evas_Textblock_Cursor *cur = evas_object_textblock_cursor_get(tb);
evas_textblock_cursor_line_set(cur, (line - 1));
elm_entry_cursor_geometry_get(ed->en_edit, NULL, &cursor_y, NULL, NULL);
elm_scroller_region_show(ed->scr_edit, 0, cursor_y, 0, 0);
elm_entry_calc_force(ed->en_edit);
elm_object_focus_set(ed->en_edit, EINA_TRUE);
}
@ -1743,6 +1655,7 @@ edit_entry_get(edit_data *ed)
static void
error_line_num_highlight(edit_data *ed)
{
#define LINE_NUM_SIZE 5
Evas_Object *tb = elm_entry_textblock_get(ed->en_line);
char *text = (char *) evas_object_textblock_text_markup_get(tb);
@ -1764,8 +1677,8 @@ error_line_num_highlight(edit_data *ed)
return;
}
char line_str[MAX_LINE_DIGIT_CNT];
snprintf(line_str, MAX_LINE_DIGIT_CNT, "%d", ed->error_line + 1);
char line_str[LINE_NUM_SIZE];
snprintf(line_str, LINE_NUM_SIZE, "%d", ed->error_line + 1);
char *ptr = strstr(utf8, line_str);
if (!ptr) return;
@ -1954,7 +1867,8 @@ cursor_part_name_get(edit_data *ed)
//Search the end character to the left
Eina_Bool is_prev = EINA_TRUE;
char *ch_l = evas_textblock_cursor_content_get(cur_l);
char *ch_l = NULL;
ch_l = evas_textblock_cursor_content_get(cur_l);
if (!ch_l) goto end;
/* If current character is ", move cursor to the previous character
to find part name correctly */
@ -1963,7 +1877,6 @@ cursor_part_name_get(edit_data *ed)
while (is_prev)
{
free(ch_l);
ch_l = evas_textblock_cursor_content_get(cur_l);
if (!ch_l || (*ch_l == '\n') || (*ch_l == ';') || (*ch_l == '\0'))
break;
@ -1975,7 +1888,6 @@ cursor_part_name_get(edit_data *ed)
}
is_prev = evas_textblock_cursor_char_prev(cur_l);
}
free(ch_l);
if (part_begin == -1) goto end;
//Search the end character to the right
@ -1983,7 +1895,6 @@ cursor_part_name_get(edit_data *ed)
char *ch_r = NULL;
while (is_next)
{
free(ch_r);
ch_r = evas_textblock_cursor_content_get(cur_r);
if (!ch_r || (*ch_r == '\n') || (*ch_r == ';') || (*ch_r == '\0'))
break;
@ -1994,7 +1905,6 @@ cursor_part_name_get(edit_data *ed)
}
is_next = evas_textblock_cursor_char_next(cur_r);
}
free(ch_r);
if (part_end == -1) goto end;
//Verify the part name
@ -2104,7 +2014,7 @@ edit_selection_region_center_set(edit_data *ed, int start, int end)
int cur_line = (cursor_y / cursor_h) + 1;
//Calculate current region of scroller
elm_scroller_region_get(ed->scr_edit, NULL, &region_y, NULL, &region_h);
elm_scroller_region_get(ed->scroller, NULL, &region_y, NULL, &region_h);
int line;
@ -2126,7 +2036,7 @@ edit_selection_region_center_set(edit_data *ed, int start, int end)
Evas_Textblock_Cursor *cur = evas_object_textblock_cursor_get(tb);
evas_textblock_cursor_line_set(cur, (line - 1));
elm_entry_cursor_geometry_get(ed->en_edit, NULL, &region_y, NULL, NULL);
elm_scroller_region_show(ed->scr_edit, 0, region_y, 0, 0);
elm_scroller_region_show(ed->scroller, 0, region_y, 0, 0);
//Select region
elm_entry_select_region_set(ed->en_edit, start, end);

View File

@ -9,9 +9,6 @@ const char ATTR_PREPEND_COLON[] = ":";
const char ATTR_PREPEND_NONE[] = "";
const char ATTR_APPEND_SEMICOLON[] = ";";
const char ATTR_APPEND_TRANSITION_TIME[] = " 1.0;";
const char ATTR_APPEND_TRANSITION_TIME_FACTOR[] = " 1.0 0.0;";
const char ATTR_APPEND_TRANSITION_TIME_FACTOR2[] = " 1.0 0.0 0.0;";
const char ATTR_APPEND_TRANSITION_TIME_FACTOR4[] = " 1.0 0.0 0.0 0.0 0.0;";
typedef struct parser_attr_s
{
@ -63,6 +60,8 @@ struct parser_s
cur_context_td *cntd;
type_init_td *titd;
bracket_td *btd;
Eina_Bool macro_update : 1;
};
@ -114,6 +113,9 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
if (!collections) bracket = 1;
if (td->pd->macro_update)
parser_macro_update(td->pd, EINA_FALSE);
td->part_name = NULL;
td->group_name = NULL;
td->state_name = NULL;
@ -127,7 +129,7 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
{
p += QUOT_UTF8_LEN;
p = strstr(p, QUOT_UTF8);
if (!p) return;
if (!p) goto end;
p += QUOT_UTF8_LEN;
continue;
}
@ -157,7 +159,7 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
if (!strncmp(p, "#if", 3))
{
p = strstr(p, "#endif");
if (!p) return;
if (!p) goto end;
p += 6; //strlen(#endif)
continue;
}
@ -171,7 +173,7 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
while (p <= end)
{
char *eol = strstr(p, "\n");
if (!eol) return;
if (!eol) goto end;
char *slash = strstr(p, "\\");
@ -201,7 +203,7 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
{
inside_parts = EINA_TRUE;
p = strstr(p, "{");
if (!p) return;
if (!p) goto end;
continue;
}
}
@ -224,11 +226,11 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
{
p += PART_LEN[part_idx];
char *name_begin = strstr(p, QUOT_UTF8);
if (!name_begin) return;
if (!name_begin) goto end;
name_begin += QUOT_UTF8_LEN;
p = name_begin;
char *name_end = strstr(p, QUOT_UTF8);
if (!name_end) return;
if (!name_end) goto end;
part_name = name_begin;
part_name_len = name_end - name_begin;
p = name_end + QUOT_UTF8_LEN;
@ -256,10 +258,11 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
/* skip keyword */
p += DESC_LEN[desc_idx];
p = strstr(p, "{");
if (!p) return;
if (!p) goto end;
/*Limit size of text for processing*/
char *end_brace = strstr(p, "}");
if (!end_brace) return;
if (!end_brace)
goto end;
/* proccessing for "description" keyword with "state"
attribute */
@ -283,7 +286,7 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
if (!name_begin)
continue;
char *end_range = strstr(p, ";");
if (!end_range) return;
if (!end_range) goto end;
/* if string placed outside desc block*/
if ((name_begin > end_brace) || (name_begin > end_range) ||
@ -304,7 +307,7 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
name_begin += QUOT_UTF8_LEN;
p = name_begin;
char *name_end = strstr(p, QUOT_UTF8);
if (!name_end) return;
if (!name_end) goto end;
desc_name = name_begin;
desc_name_len = name_end - name_begin;
p = name_end + QUOT_UTF8_LEN;
@ -339,11 +342,11 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
{
p += GROUP_LEN;
char *name_begin = strstr(p, QUOT_UTF8);
if (!name_begin) return;
if (!name_begin) goto end;
name_begin += QUOT_UTF8_LEN;
p = name_begin;
char *name_end = strstr(p, QUOT_UTF8);
if (!name_end) return;
if (!name_end) goto end;
group_name = name_begin;
group_name_len = name_end - name_begin;
@ -365,6 +368,10 @@ cur_context_thread_blocking(void *data, Ecore_Thread *thread)
td->group_name = group_name;
td->state_name = desc_name;
td->state_value = value_convert;
end:
free(utf8);
td->utf8 = NULL;
}
Eina_Stringshare *
@ -490,7 +497,6 @@ cur_context_thread_cancel(void *data, Ecore_Thread *thread EINA_UNUSED)
eina_stringshare_del(td->state_name);
eina_stringshare_del(td->part_name);
eina_stringshare_del(td->group_name);
free(td->utf8);
free(td);
}
@ -549,6 +555,10 @@ type_init_thread_blocking(void *data, Ecore_Thread *thread EINA_UNUSED)
attr.context = eina_stringshare_add("text");
eina_inarray_push(td->attrs, &attr);
wh = eina_array_new(2);
eina_array_push(wh, eina_stringshare_add("W:"));
eina_array_push(wh, eina_stringshare_add("H:"));
// Context independed attributes
Eina_Array *trans = eina_array_new(11);
eina_array_push(trans, eina_stringshare_add("LINEAR"));
@ -563,26 +573,12 @@ type_init_thread_blocking(void *data, Ecore_Thread *thread EINA_UNUSED)
eina_array_push(trans, eina_stringshare_add("SPRING"));
eina_array_push(trans, eina_stringshare_add("CUBIC_BEZIER"));
Eina_Array *trans_append_str = eina_array_new(11);
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR2));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR2));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR2));
eina_array_push(trans_append_str, eina_stringshare_add(ATTR_APPEND_TRANSITION_TIME_FACTOR4));
memset(&attr, 0x00, sizeof(parser_attr));
attr.keyword = eina_stringshare_add("transition");
attr.value.strs = trans;
attr.value.type = ATTR_VALUE_CONSTANT;
attr.value.prepend_str = ATTR_PREPEND_COLON;
attr.value.append_str_array = trans_append_str;
attr.value.use_append_str_array = EINA_TRUE;
attr.value.append_str = ATTR_APPEND_TRANSITION_TIME;
eina_inarray_push(td->attrs, &attr);
Eina_Array *aspect_mode = eina_array_new(5);
@ -906,8 +902,8 @@ type_init_thread_blocking(void *data, Ecore_Thread *thread EINA_UNUSED)
eina_inarray_push(td->attrs, &attr);
wh = eina_array_new(2);
eina_array_push(wh, eina_stringshare_add("Min:"));
eina_array_push(wh, eina_stringshare_add("Max:"));
eina_array_push(wh, eina_stringshare_add("W:"));
eina_array_push(wh, eina_stringshare_add("H:"));
memset(&attr, 0x00, sizeof(parser_attr));
attr.keyword = eina_stringshare_add("aspect");
@ -1431,7 +1427,7 @@ parser_name_get(parser_data *pd EINA_UNUSED, const char *cur)
char *eol = strstr(cur, "\n");
if (eol && (eol < p)) return NULL;
return eina_strndup(p, (end - p));
return strndup(p, (end - p));
}
attr_value *
@ -1864,7 +1860,7 @@ parser_states_filtered_name_get(Eina_List *states)
pp = p;
p++;
}
ret = eina_list_append(ret, eina_strndup(state, pp - state));
ret = eina_list_append(ret, strndup(state, pp - state));
}
return ret;
}
@ -2010,6 +2006,12 @@ parser_is_image_name(const Evas_Object *entry, const char *str)
return EINA_FALSE;
}
void
parser_macro_update(parser_data *pd, Eina_Bool macro_update)
{
pd->macro_update = macro_update;
}
void
parser_bracket_cancel(parser_data *pd)
{

View File

@ -96,7 +96,6 @@ edj_mgr_term(void)
edj_mgr_clear();
evas_object_del(em->layout);
free(em);
g_em = NULL;
}
view_data *

View File

@ -168,10 +168,10 @@ view_obj_create_post_job(view_data *vd)
if (vd->part_name) view_part_highlight_set(vd, vd->part_name);
if (enventor_object_dummy_parts_get(vd->enventor))
if (enventor_obj_dummy_parts_get(vd->enventor))
dummy_obj_new(vd->layout);
if (enventor_object_wireframes_get(vd->enventor))
if (enventor_obj_wireframes_get(vd->enventor))
wireframes_obj_new(vd->layout);
view_mirror_mode_update(vd);
@ -249,7 +249,6 @@ part_obj_geom_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj,
evas_object_resize(part_highlight, w, h);
evas_object_clip_set(part_highlight, clipper);
}
#if 0
else if (type == EDJE_PART_TYPE_TEXT)
{
Evas_Coord lx, ly;
@ -259,7 +258,6 @@ part_obj_geom_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj,
evas_object_resize(part_highlight, w, h);
evas_object_move(part_highlight, lx + x, ly + y);
}
#endif
else
{
evas_object_geometry_get(obj, &x, &y, &w, &h);
@ -961,7 +959,7 @@ view_mirror_mode_update(view_data *vd)
{
if (!vd || !vd->layout) return;
edje_object_mirrored_set(vd->layout,
enventor_object_mirror_mode_get(vd->enventor));
enventor_obj_mirror_mode_get(vd->enventor));
dummy_obj_update(vd->layout);
part_obj_geom_cb(vd, evas_object_evas_get(vd->layout), vd->part_obj, NULL);
}

243
src/lib/enventor_object.eo Normal file
View File

@ -0,0 +1,243 @@
type Enventor_Path_Type: __undefined_type;
type Enventor_Syntax_Color_Type: __undefined_type;
type Enventor_Template_Insert_Type: __undefined_type;
type Edje_Part_Type: __undefined_type;
class Enventor.Object (Elm.Widget, Efl.File) {
legacy_prefix: enventor_object;
eo_prefix: enventor_obj;
methods {
@property part_highlight {
set {
}
get {
}
values {
part_highlight: bool;
}
}
@property live_view_scale {
set {
}
get {
}
values {
scale: double;
}
}
@property dummy_parts {
set {
}
get {
}
values {
dummy_parts: bool;
}
}
@property wireframes {
set {
}
get {
}
values {
wireframe: bool;
}
}
@property mirror_mode {
set {
}
get {
}
values {
mirror_mode: bool;
}
}
@property auto_complete {
set {
}
get {
}
values {
auto_complete: bool;
}
}
@property auto_indent {
set {
}
get {
}
values {
auto_indent: bool;
}
}
@property ctxpopup {
set {
}
get {
}
values {
ctxpopup: bool;
}
}
@property focus {
set {
}
get {
}
values {
focus: bool;
}
}
@property font_scale {
set {
}
get {
}
values {
font_scale: double;
}
}
@property linenumber {
set {
}
get {
}
values {
linenumber: bool;
}
}
@property smart_undo_redo {
set {
}
get {
}
values {
smart_undo_redo: bool;
}
}
path_set {
return: bool;
params {
@in type: Enventor_Path_Type;
@in pathes: own(const(list<own(Eina_Stringshare *)>));
}
}
path_get {
return: const(list<own(Eina_Stringshare *)>);
params {
@in type: Enventor_Path_Type;
}
}
programs_list_get {
return: list<char *>;
}
part_states_list_get {
return: list<char *>;
params {
@in type: const(char) *;
}
}
parts_list_get {
return: list<char *>;
}
live_view_get {
return: Efl.Canvas.Object;
}
programs_stop {
}
program_run {
params {
@in program: const(char) *;
}
}
syntax_color_set {
params {
@in color_type: Enventor_Syntax_Color_Type;
@in val: const(char) *;
}
}
syntax_color_get {
return: const(char) *;
params {
@in color_type: Enventor_Syntax_Color_Type;
}
}
ctxpopup_visible_get {
return: bool;
}
ctxpopup_dismiss {
}
disabled_set {
params {
@in disabled: bool;
}
}
live_view_size_set {
params {
@in w: Evas.Coord;
@in h: Evas.Coord;
}
}
live_view_size_get {
params {
@in w: Evas.Coord *;
@in h: Evas.Coord *;
}
}
part_type_get {
return: Edje_Part_Type;
params {
@in part_name: const(char) *;
}
}
font_set {
params {
@in font_name: const(char) *;
@in font_style: const(char) *;
}
}
font_get {
params {
@in font_name: const(char) **;
@in font_style: const(char) **;
}
}
auto_complete_list_show {
}
keyword_reference_show {
}
base_scale_get {
return: double;
}
}
implements {
class.constructor;
Efl.Object.constructor;
Efl.Canvas.Group.group_add;
Efl.Canvas.Group.group_del;
Efl.Canvas.Group.group_move;
Efl.Canvas.Group.group_resize;
Efl.Canvas.Group.group_show;
Efl.Canvas.Group.group_hide;
Efl.Canvas.Group.group_clip.set;
Efl.Canvas.Group.group_clip_unset;
Efl.Canvas.Group.group_member_add;
Efl.File.file.set;
}
events {
cursor,line,changed;
cursor,group,changed;
live_view,updated;
live_view,loaded;
live_view,cursor,moved;
live_view,resized;
max_line,changed;
compile,error;
ctxpopup,activated;
ctxpopup,changed;
ctxpopup,dismissed;
edc,modified;
focused;
file,open,requested;
}
}

View File

@ -22,8 +22,6 @@
#define VIEW_DATA edj_mgr_view_get(NULL)
#define ATTR_VALUE_MAX_CNT 4
typedef Eo Enventor_Object;
extern const char SIG_CURSOR_LINE_CHANGED[];
extern const char SIG_CURSOR_GROUP_CHANGED[];
extern const char SIG_MAX_LINE_CHANGED[];
@ -71,8 +69,6 @@ struct attr_value_s
attr_value_type type;
const char *prepend_str;
const char *append_str;
Eina_Array *append_str_array;
Eina_Bool use_append_str_array : 1;
Eina_Bool program : 1;
};
@ -102,6 +98,7 @@ void color_set(color_data *cd, Enventor_Syntax_Color_Type color_type, const char
const char *color_value_get(Enventor_Syntax_Color_Type color_type);
const char *color_cancel(Ecore_Thread *thread, color_data *cd, const char *str, int length, int from_pos, int to_pos, char **from, char **to);
const char *color_apply(Ecore_Thread *thread, color_data *cd, const char *str, int length, char *from, char *to);
Eina_Bool color_ready(color_data *cd);
/*parser */
@ -124,6 +121,7 @@ Eina_Bool parser_images_pos_get(const Evas_Object *entry, int *ret);
Eina_Bool parser_is_image_name(const Evas_Object *entry, const char *str);
Eina_Bool parser_styles_pos_get(const Evas_Object *entry, int *ret);
Eina_Bool parser_state_info_get(Evas_Object *entry, state_info *info);
void parser_macro_update(parser_data *pd, Eina_Bool macro_update);
typedef void (*Bracket_Update_Cb)(void *data, int left, int right);
void parser_bracket_find(parser_data *pd, Evas_Object *entry, Bracket_Update_Cb func, void *data);
void parser_bracket_cancel(parser_data *pd);

View File

@ -2,10 +2,22 @@
#include "config.h"
#endif
#define ELM_INTERNAL_API_ARGESFSDFEFC 1
#define EFL_CANVAS_OBJECT_PROTECTED 1
#include <Enventor.h>
#include <Eio.h>
#include <elm_widget.h>
#include "enventor_private.h"
#define MY_CLASS_NAME_LEGACY "enventor_object"
#ifdef MY_CLASS
#undef MY_CLASS
#endif
#define MY_CLASS ENVENTOR_OBJECT_CLASS
#define DEFAULT_LINENUMBER EINA_TRUE
#define DEFAULT_FONT_SCALE 1
#define DEFAULT_AUTO_INDENT EINA_TRUE
@ -13,25 +25,6 @@
#define DEFAULT_SMART_UNDO_REDO EINA_FALSE
#define DEFAULT_CTXPOPUP EINA_TRUE
#define ENVENTOR_OBJECT_DATA_GET(o, pd) \
Enventor_Object_Data *pd = evas_object_data_get(o, "_enventor")
#define ENVENTOR_OBJECT_DATA_GET_OR_RETURN(o, pd) \
ENVENTOR_OBJECT_DATA_GET(o, pd); \
if (!pd) \
{ \
EINA_LOG_ERR("Failed to get Enventor_Object_Data!"); \
return; \
}
#define ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(o, pd, val) \
ENVENTOR_OBJECT_DATA_GET(o, pd); \
if (!pd) \
{ \
EINA_LOG_ERR("Failed to get Enventor_Object_Data!"); \
return val; \
}
typedef struct _Enventor_Object_Data Enventor_Object_Data;
typedef struct _Enventor_Item_Data Enventor_Item_Data;
@ -87,12 +80,10 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
{NULL, NULL}
};
static Eina_Error ENVENTOR_FILE_SET_ERROR_NONE;
static Eina_Error ENVENTOR_FILE_SET_ERROR_GENERIC;
/*****************************************************************************/
/* Internal method implementation */
/*****************************************************************************/
static void
_enventor_main_item_free(Enventor_Object_Data *pd)
{
@ -103,12 +94,8 @@ static void
_enventor_sub_items_free(Enventor_Object_Data *pd)
{
Enventor_Item *it;
while(pd->sub_its)
{
it = eina_list_data_get(pd->sub_its);
enventor_item_del(it);
}
EINA_LIST_FREE(pd->sub_its, it)
enventor_item_del(it);
pd->sub_its = NULL;
}
@ -247,11 +234,60 @@ call_error:
}
static void
_enventor_object_del_cb(void *data, Evas *e EINA_UNUSED,
Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
_enventor_part_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *ei)
{
Enventor_Object_Data *pd = data;
Enventor_Object_Data *pd = (Enventor_Object_Data *)data;
if (pd->disabled || !pd->focused_it) return;
const char *part_name = (const char *)ei;
edit_part_cursor_set(pd->focused_it->ed, view_group_name_get(VIEW_DATA),
part_name);
}
/*****************************************************************************/
/* Internal Eo object required routines */
/*****************************************************************************/
EOLIAN static void
_enventor_object_class_constructor(Efl_Class *klass)
{
evas_smart_legacy_type_register(MY_CLASS_NAME_LEGACY, klass);
}
EOLIAN static void
_enventor_object_efl_canvas_group_group_add(Eo *obj, Enventor_Object_Data *pd)
{
pd->obj = obj;
efl_canvas_group_add(efl_super(obj, MY_CLASS));
elm_widget_sub_object_parent_add(obj);
build_init();
autocomp_init();
ref_init();
edj_mgr_init(obj);
build_err_noti_cb_set(build_err_noti_cb, pd);
elm_widget_can_focus_set(obj, EINA_FALSE);
pd->key_down_handler =
ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, key_down_cb, pd);
pd->key_up_handler =
ecore_event_handler_add(ECORE_EVENT_KEY_UP, key_up_cb, pd);
evas_object_smart_callback_add(pd->obj, "part,clicked",
_enventor_part_clicked_cb, pd);
pd->font_scale = DEFAULT_FONT_SCALE;
pd->linenumber = DEFAULT_LINENUMBER;
pd->auto_indent = DEFAULT_AUTO_INDENT;
pd->part_highlight = DEFAULT_PART_HIGHLIGHT;
pd->smart_undo_redo = DEFAULT_SMART_UNDO_REDO;
pd->ctxpopup = DEFAULT_CTXPOPUP;
}
EOLIAN static void
_enventor_object_efl_canvas_group_group_del(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
int i;
for (i = ENVENTOR_SYNTAX_COLOR_STRING; i < ENVENTOR_SYNTAX_COLOR_LAST; i++)
eina_stringshare_del(pd->text_color_val[i]);
@ -271,202 +307,272 @@ _enventor_object_del_cb(void *data, Evas *e EINA_UNUSED,
build_term();
}
static void
_enventor_part_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *ei)
EOLIAN static void
_enventor_object_efl_canvas_group_group_member_add(Eo *obj, Enventor_Object_Data *pd EINA_UNUSED, Evas_Object *child)
{
Enventor_Object_Data *pd = (Enventor_Object_Data *)data;
if (pd->disabled || !pd->focused_it) return;
const char *part_name = (const char *)ei;
edit_part_cursor_set(pd->focused_it->ed, view_group_name_get(VIEW_DATA),
part_name);
//Don't go through elm_widget to avoid color set.
evas_object_data_set(child, "_elm_leaveme", (void*)1);
efl_canvas_group_member_add(efl_super(obj, MY_CLASS), child);
Evas_Coord x, y, w, h;
evas_object_geometry_get(obj, &x, &y, &w, &h);
evas_object_move(child, x, y);
evas_object_resize(child, w, h);
evas_object_clip_set(child, evas_object_clip_get(obj));
}
/*****************************************************************************/
/* Externally accessible calls */
/*****************************************************************************/
#if 0
EAPI void
enventor_object_efl_gfx_entity_visible_set(Enventor_Object *obj, Eina_Bool vis)
EOLIAN static void
_enventor_object_efl_canvas_group_group_move(Eo *obj, Enventor_Object_Data *pd EINA_UNUSED, Evas_Coord x, Evas_Coord y)
{
efl_gfx_entity_visible_set(efl_super(obj, MY_CLASS), vis);
Eina_Iterator *it = evas_object_smart_iterator_new(obj);
Evas_Object *o;
EINA_ITERATOR_FOREACH(it, o)
evas_object_move(o, x, y);
eina_iterator_free(it);
}
EOLIAN static void
_enventor_object_efl_canvas_group_group_resize(Eo *obj, Enventor_Object_Data *pd EINA_UNUSED, Evas_Coord w, Evas_Coord h)
{
Eina_Iterator *it = evas_object_smart_iterator_new(obj);
Evas_Object *o;
EINA_ITERATOR_FOREACH(it, o)
evas_object_resize(o, w, h);
eina_iterator_free(it);
}
EOLIAN static void
_enventor_object_efl_canvas_group_group_show(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
if (!pd->focused_it) return;
Evas_Object *o = edit_obj_get(pd->focused_it->ed);
if (vis)
evas_object_show(o);
else
evas_object_hide(o);
evas_object_show(o);
}
#endif
EAPI Eina_List *
enventor_object_programs_list_get(Enventor_Object *obj)
EOLIAN static void
_enventor_object_efl_canvas_group_group_hide(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
if (!pd->focused_it) return;
Evas_Object *o = edit_obj_get(pd->focused_it->ed);
evas_object_hide(o);
}
EOLIAN static void
_enventor_object_efl_canvas_group_group_clip_set(Eo *obj, Enventor_Object_Data *pd EINA_UNUSED, Evas_Object *clip)
{
Eina_Iterator *it = evas_object_smart_iterator_new(obj);
Evas_Object *o;
EINA_ITERATOR_FOREACH(it, o)
evas_object_clip_set(o, clip);
eina_iterator_free(it);
}
EOLIAN static void
_enventor_object_efl_canvas_group_group_clip_unset(Eo *obj, Enventor_Object_Data *pd EINA_UNUSED)
{
Eina_Iterator *it = evas_object_smart_iterator_new(obj);
Evas_Object *o;
EINA_ITERATOR_FOREACH(it, o)
evas_object_clip_unset(o);
eina_iterator_free(it);
}
EOLIAN static Eo *
_enventor_object_efl_object_constructor(Eo *obj,
Enventor_Object_Data *pd EINA_UNUSED)
{
obj = efl_constructor(efl_super(obj, MY_CLASS));
efl_canvas_object_type_set(obj, MY_CLASS_NAME_LEGACY);
evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks);
return obj;
}
EOLIAN static Eina_Bool
_enventor_object_efl_file_file_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
const char *file,
const char *group EINA_UNUSED)
{
build_edc_path_set(file);
if (!file) goto err;
if (!edit_load(pd->main_it->ed, file)) return EINA_FALSE;
build_edc();
edit_changed_set(pd->main_it->ed, EINA_FALSE);
return EINA_TRUE;
err:
build_edc_path_set(NULL);
return EINA_FALSE;
}
EOLIAN static Eina_List *
_enventor_object_programs_list_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
return view_programs_list_get(VIEW_DATA);
}
EAPI Eina_List *
enventor_object_part_states_list_get(Enventor_Object *obj, const char *part)
EOLIAN static Eina_List *
_enventor_object_part_states_list_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
const char *part)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
return view_part_states_list_get(VIEW_DATA, part);
}
EAPI Edje_Part_Type
enventor_object_part_type_get(Enventor_Object *obj, const char *part_name)
EOLIAN static Edje_Part_Type
_enventor_object_part_type_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
const char *part_name)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, 0);
return view_part_type_get(VIEW_DATA, part_name);
}
EAPI Eina_List *
enventor_object_parts_list_get(Enventor_Object *obj)
EOLIAN static Eina_List *
_enventor_object_parts_list_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
return view_parts_list_get(VIEW_DATA);
}
EAPI void
enventor_object_linenumber_set(Enventor_Object *obj, Eina_Bool linenumber)
EOLIAN static void
_enventor_object_linenumber_set(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd,
Eina_Bool linenumber)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
linenumber = !!linenumber;
if (pd->linenumber == linenumber) return;
if (!pd->focused_it) return;
//Main Item
edit_linenumber_set(pd->focused_it->ed, linenumber);
pd->linenumber = linenumber;
}
EAPI Eina_Bool
enventor_object_linenumber_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_linenumber_get(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->linenumber;
}
EAPI void
enventor_object_smart_undo_redo_set(Enventor_Object *obj, Eina_Bool smart_undo_redo)
EOLIAN static void
_enventor_object_smart_undo_redo_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Eina_Bool smart_undo_redo)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
smart_undo_redo = !!smart_undo_redo;
pd->smart_undo_redo = smart_undo_redo;
}
EAPI Eina_Bool
enventor_object_smart_undo_redo_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_smart_undo_redo_get(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->smart_undo_redo;
}
EAPI void
enventor_object_auto_indent_set(Enventor_Object *obj, Eina_Bool auto_indent)
EOLIAN static void
_enventor_object_auto_indent_set(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd,
Eina_Bool auto_indent)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
pd->auto_indent = !!auto_indent;
}
EAPI Eina_Bool
enventor_object_auto_indent_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_auto_indent_get(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->auto_indent;
}
EAPI void
enventor_object_auto_complete_set(Enventor_Object *obj, Eina_Bool auto_complete)
EOLIAN static void
_enventor_object_auto_complete_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
Eina_Bool auto_complete)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
autocomp_enabled_set(auto_complete);
}
EAPI Eina_Bool
enventor_object_auto_complete_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_auto_complete_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return autocomp_enabled_get();
}
EAPI void
enventor_object_auto_complete_list_show(Enventor_Object *obj)
EOLIAN static void
_enventor_object_auto_complete_list_show(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
autocomp_list_show();
}
EAPI Eina_Bool
enventor_object_path_set(Enventor_Object *obj, Enventor_Path_Type type,
Eina_List *pathes)
EOLIAN static Eina_Bool
_enventor_object_path_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
Enventor_Path_Type type, const Eina_List *pathes)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
//edj file is changed
if (type == ENVENTOR_PATH_TYPE_EDJ)
{
const char *path = eina_list_data_get(pathes);
const char *ppath = build_edj_path_get();
if (path && ppath && strcmp(path, ppath))
{
edj_mgr_clear();
eina_stringshare_del(pd->group_name);
pd->group_name = NULL;
}
}
return build_path_set(type, pathes);
}
EAPI const Eina_List *
enventor_object_path_get(Enventor_Object *obj, Enventor_Path_Type type)
EOLIAN static const Eina_List *
_enventor_object_path_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
Enventor_Path_Type type)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
return build_path_get(type);
}
EAPI void
enventor_object_live_view_scale_set(Enventor_Object *obj, double scale)
EOLIAN static void
_enventor_object_live_view_scale_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
double scale)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
view_scale_set(VIEW_DATA, scale);
}
EAPI void
enventor_object_live_view_size_set(Enventor_Object *obj, Evas_Coord w, Evas_Coord h)
EOLIAN static void
_enventor_object_live_view_size_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
Evas_Coord w, Evas_Coord h)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
view_size_set(VIEW_DATA, w, h);
}
EAPI void
enventor_object_live_view_size_get(Enventor_Object *obj, Evas_Coord *w, Evas_Coord *h)
EOLIAN static void
_enventor_object_live_view_size_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
Evas_Coord *w, Evas_Coord *h)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
view_size_get(VIEW_DATA, w, h);
}
EAPI double
enventor_object_live_view_scale_get(const Enventor_Object *obj)
EOLIAN static double
_enventor_object_live_view_scale_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, 1);
return view_scale_get(VIEW_DATA);
}
EAPI void
enventor_object_dummy_parts_set(Enventor_Object *obj, Eina_Bool dummy_parts)
EOLIAN static void
_enventor_object_dummy_parts_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Eina_Bool dummy_parts)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
dummy_parts = !!dummy_parts;
if (pd->dummy_parts == dummy_parts) return;
@ -474,133 +580,120 @@ enventor_object_dummy_parts_set(Enventor_Object *obj, Eina_Bool dummy_parts)
pd->dummy_parts = dummy_parts;
}
EAPI Eina_Bool
enventor_object_ctxpopup_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_ctxpopup_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->ctxpopup;
}
EAPI void
enventor_object_ctxpopup_set(Enventor_Object *obj, Eina_Bool ctxpopup)
EOLIAN static void
_enventor_object_ctxpopup_set(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd,
Eina_Bool ctxpopup)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
ctxpopup = !!ctxpopup;
pd->ctxpopup = ctxpopup;
}
EAPI Eina_Bool
enventor_object_ctxpopup_visible_get(Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_ctxpopup_visible_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
if (!pd->focused_it) return EINA_FALSE;
return edit_ctxpopup_visible_get(pd->focused_it->ed);
}
EAPI void
enventor_object_ctxpopup_dismiss(Enventor_Object *obj)
EOLIAN static void
_enventor_object_ctxpopup_dismiss(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
if (!pd->focused_it) return;
edit_ctxpopup_dismiss(pd->focused_it->ed);
}
EAPI Eina_Bool
enventor_object_dummy_parts_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_dummy_parts_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->dummy_parts;
}
EAPI void
enventor_object_wireframes_set(Enventor_Object *obj, Eina_Bool wireframes)
EOLIAN static void
_enventor_object_wireframes_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Eina_Bool wireframes)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
wireframes = !!wireframes;
view_wireframes_set(VIEW_DATA, wireframes);
pd->wireframes = wireframes;
}
EAPI Eina_Bool
enventor_object_wireframes_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_wireframes_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->wireframes;
}
EAPI void
enventor_object_part_highlight_set(Enventor_Object *obj, Eina_Bool part_highlight)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
EOLIAN static void
_enventor_object_part_highlight_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Eina_Bool part_highlight)
{
part_highlight = !!part_highlight;
if (pd->part_highlight == part_highlight) return;
pd->part_highlight = part_highlight;
if (!pd->focused_it) return;
//Main Item
if (part_highlight) edit_view_sync(pd->focused_it->ed);
if (part_highlight && pd->focused_it) edit_view_sync(pd->focused_it->ed);
else view_part_highlight_set(VIEW_DATA, NULL);
}
EAPI Eina_Bool
enventor_object_part_highlight_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_part_highlight_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->part_highlight;
}
EAPI void
enventor_object_mirror_mode_set(Enventor_Object *obj, Eina_Bool mirror_mode)
EOLIAN static void
_enventor_object_mirror_mode_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Eina_Bool mirror_mode)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
pd->mirror_mode = !!mirror_mode;
view_mirror_mode_update(VIEW_DATA);
}
EAPI Eina_Bool
enventor_object_mirror_mode_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_mirror_mode_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
return pd->mirror_mode;
}
EAPI void
enventor_object_focus_set(Enventor_Object *obj, Eina_Bool focus)
EOLIAN static void
_enventor_object_focus_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
Eina_Bool focus)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
if (!pd->focused_it) return;
edit_focus_set(pd->focused_it->ed, focus);
}
EAPI Eina_Bool
enventor_object_focus_get(const Enventor_Object *obj)
EOLIAN static Eina_Bool
_enventor_object_focus_get(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, EINA_FALSE);
if (!pd->focused_it) return EINA_FALSE;
return edit_focus_get(pd->focused_it->ed);
}
EAPI void
enventor_object_font_scale_set(Enventor_Object *obj, double font_scale)
EOLIAN static void
_enventor_object_font_scale_set(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd,
double font_scale)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
if (pd->font_scale == font_scale) return;
pd->font_scale = font_scale;
@ -608,20 +701,16 @@ enventor_object_font_scale_set(Enventor_Object *obj, double font_scale)
edit_font_scale_set(pd->focused_it->ed, font_scale);
}
EAPI double
enventor_object_font_scale_get(const Enventor_Object *obj)
EOLIAN static double
_enventor_object_font_scale_get(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, 1);
return pd->font_scale;
}
EAPI void
enventor_object_font_set(Enventor_Object *obj, const char *font_name,
const char *font_style)
EOLIAN static void
_enventor_object_font_set(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd,
const char *font_name, const char *font_style)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
if (!font_name) return;
if ((font_name == pd->font_name) && (font_style == pd->font_style)) return;
@ -636,22 +725,20 @@ enventor_object_font_set(Enventor_Object *obj, const char *font_name,
elm_font_fontconfig_name_free(font);
}
EAPI void
enventor_object_font_get(Enventor_Object *obj, const char **font_name,
const char **font_style)
EOLIAN static void
_enventor_object_font_get(Eo *obj EINA_UNUSED, Enventor_Object_Data *pd,
const char **font_name, const char **font_style)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
if (font_name) *font_name = pd->font_name;
if (font_style) *font_style = pd->font_style;
}
EAPI void
enventor_object_syntax_color_set(Enventor_Object *obj,
Enventor_Syntax_Color_Type color_type,
const char *val)
EOLIAN static void
_enventor_object_syntax_color_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Enventor_Syntax_Color_Type color_type,
const char *val)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
EINA_SAFETY_ON_NULL_RETURN(val);
if ((color_type < ENVENTOR_SYNTAX_COLOR_STRING) ||
@ -675,12 +762,11 @@ enventor_object_syntax_color_set(Enventor_Object *obj,
edit_syntax_color_set(it->ed, color_type, val);
}
EAPI const char *
enventor_object_syntax_color_get(Enventor_Object *obj,
Enventor_Syntax_Color_Type color_type)
EOLIAN static const char *
_enventor_object_syntax_color_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Enventor_Syntax_Color_Type color_type)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
if ((color_type < ENVENTOR_SYNTAX_COLOR_STRING) ||
(color_type >= ENVENTOR_SYNTAX_COLOR_LAST))
{
@ -695,111 +781,70 @@ enventor_object_syntax_color_get(Enventor_Object *obj,
return color_value_get(color_type);
}
EAPI Eo *
enventor_object_live_view_get(Enventor_Object *obj)
EOLIAN static Eo *
_enventor_object_live_view_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
return edj_mgr_obj_get();
}
EAPI void
enventor_object_disabled_set(Enventor_Object *obj, Eina_Bool disabled)
EOLIAN static void
_enventor_object_disabled_set(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd,
Eina_Bool disabled)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
disabled = !!disabled;
if (pd->disabled == disabled) return;
if (!pd->focused_it) return;
edit_disabled_set(pd->focused_it->ed, disabled);
pd->disabled = !!disabled;
}
EAPI void
enventor_object_program_run(Enventor_Object *obj, const char *program)
EOLIAN static void
_enventor_object_program_run(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED,
const char *program)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
view_program_run(VIEW_DATA, program);
}
EAPI void
enventor_object_programs_stop(Enventor_Object *obj)
EOLIAN static void
_enventor_object_programs_stop(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd EINA_UNUSED)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
view_programs_stop(VIEW_DATA);
}
EAPI void
enventor_object_keyword_reference_show(Enventor_Object *obj)
EOLIAN static void
_enventor_object_keyword_reference_show(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN(obj, pd);
if (!pd->focused_it) return;
ref_show(pd->focused_it->ed);
}
EAPI double
enventor_object_base_scale_get(Enventor_Object *obj)
EOLIAN static double
_enventor_object_base_scale_get(Eo *obj EINA_UNUSED,
Enventor_Object_Data *pd)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, 1);
return view_base_scale_get(VIEW_DATA);
}
/*****************************************************************************/
/* Externally accessible calls */
/*****************************************************************************/
EAPI Enventor_Object *
enventor_object_add(Eo *parent)
enventor_object_add(Enventor_Object *parent)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
Enventor_Object_Data *pd = calloc(1, sizeof(Enventor_Object_Data));
if (!pd)
{
mem_fail_msg();
return NULL;
}
//TODO: These could be remove when removing enventor object library support
Eo *obj = elm_layout_add(parent);
elm_layout_file_set(obj, EDJE_PATH, "enventor_object");
evas_object_event_callback_add(obj, EVAS_CALLBACK_DEL, _enventor_object_del_cb, pd);
evas_object_data_set(obj, "_enventor", pd);
pd->obj = obj;
build_init();
autocomp_init();
ref_init();
edj_mgr_init(obj);
build_err_noti_cb_set(build_err_noti_cb, pd);
pd->key_down_handler =
ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, key_down_cb, pd);
pd->key_up_handler =
ecore_event_handler_add(ECORE_EVENT_KEY_UP, key_up_cb, pd);
evas_object_smart_callback_add(pd->obj, "part,clicked",
_enventor_part_clicked_cb, pd);
pd->font_scale = DEFAULT_FONT_SCALE;
pd->linenumber = DEFAULT_LINENUMBER;
pd->auto_indent = DEFAULT_AUTO_INDENT;
pd->part_highlight = DEFAULT_PART_HIGHLIGHT;
pd->smart_undo_redo = DEFAULT_SMART_UNDO_REDO;
pd->ctxpopup = DEFAULT_CTXPOPUP;
elm_object_focus_allow_set(obj, EINA_FALSE);
Evas_Object *obj = efl_add(MY_CLASS, parent);
return obj;
}
EAPI Enventor_Item *
enventor_object_sub_item_add(Enventor_Object *obj, const char *file)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
Enventor_Object_Data *pd = efl_data_scope_get(obj, ENVENTOR_OBJECT_CLASS);
if (!file)
{
@ -843,7 +888,7 @@ enventor_object_sub_item_add(Enventor_Object *obj, const char *file)
EAPI Enventor_Item *
enventor_object_main_item_set(Enventor_Object *obj, const char *file)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
Enventor_Object_Data *pd = efl_data_scope_get(obj, ENVENTOR_OBJECT_CLASS);
edj_mgr_clear();
_enventor_main_item_free(pd);
@ -860,46 +905,35 @@ enventor_object_main_item_set(Enventor_Object *obj, const char *file)
it->ed = edit_init(obj, it);
it->pd = pd;
build_edc_path_set(file);
if (!file) goto err;
if (!edit_load(pd->main_it->ed, file)) goto err;
build_edc();
edit_changed_set(pd->main_it->ed, EINA_FALSE);
if (!efl_file_set(obj, file, NULL))
{
edit_term(it->ed);
pd->main_it = NULL;
free(it);
return NULL;
}
return it;
err:
eina_error_set(ENVENTOR_FILE_SET_ERROR_GENERIC);
build_edc_path_set(NULL);
edit_term(it->ed);
pd->main_it = NULL;
free(it);
return NULL;
}
EAPI Enventor_Item *
enventor_object_main_item_get(const Enventor_Object *obj)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
Enventor_Object_Data *pd = efl_data_scope_get(obj, ENVENTOR_OBJECT_CLASS);
return pd->main_it;
}
EAPI const Eina_List *
enventor_object_sub_items_get(const Enventor_Object *obj)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
Enventor_Object_Data *pd = efl_data_scope_get(obj, ENVENTOR_OBJECT_CLASS);
return pd->sub_its;
}
EAPI Enventor_Item *
enventor_object_focused_item_get(const Enventor_Object *obj)
{
ENVENTOR_OBJECT_DATA_GET_OR_RETURN_VAL(obj, pd, NULL);
Enventor_Object_Data *pd = efl_data_scope_get(obj, ENVENTOR_OBJECT_CLASS);
return pd->focused_it;
}
@ -933,10 +967,8 @@ enventor_item_represent(Enventor_Item *it)
edit_font_scale_set(it->ed, pd->font_scale);
edit_disabled_set(it->ed, pd->disabled);
//TODO: Thise could be remove when removing enventor object library support
Eo *obj = elm_layout_content_unset(it->pd->obj, "main");
evas_object_hide(obj);
elm_layout_content_set(it->pd->obj, "main", edit_obj_get(it->ed));
if (evas_object_visible_get(it->pd->obj))
evas_object_show(edit_obj_get(it->ed));
autocomp_target_set(it->ed);
@ -1222,3 +1254,5 @@ enventor_item_group_list_get(Enventor_Item *it)
return edit_group_list_get(it->ed);
}
#include "enventor_object.eo.c"

View File

@ -1,45 +0,0 @@
enventor_header_src = [ 'Enventor.h' ]
install_headers(enventor_header_src,
install_dir : dir_pkginclude + '-' + v_maj
)
enventor_src = [
'auto_comp.c',
'build.c',
'ctxpopup.c',
'dummy_obj.c',
'edc_editor.c',
'edc_parser.c',
'edj_mgr.c',
'edj_viewer.c',
'enventor_main.c',
'enventor_smart.c',
'redoundo.c',
'reference.c',
'syntax_color.c',
'syntax_helper.c',
'syntax_indent.c',
'template.c',
'util.c',
'wireframes_obj.c'
]
enventor_lib = library('enventor', enventor_src,
c_args : [ enventor_cargs,
'-DHAVE_CONFIG_H',
'-DENVENTOR_WIN32_BUILD_SUPPORT',
'-I' + join_paths(meson.source_root(), 'src/include')
],
dependencies : enventor_deps,
include_directories : config_dir,
install : true,
version : meson.project_version()
)
enventor = declare_dependency(
include_directories : [ include_directories('.')],
link_with : enventor_lib,
dependencies : enventor_deps
)

View File

@ -50,7 +50,7 @@ entry_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
rd->cursor = NULL;
}
static Eina_Bool
Eina_Bool
_input_timer_cb(void *data)
{
redoundo_data *rd = (redoundo_data *)data;
@ -63,8 +63,7 @@ _input_timer_cb(void *data)
static diff_data *
smart_analyser(redoundo_data *rd, diff_data *diff)
{
Eina_Bool is_continues_text = EINA_FALSE;
if (!enventor_object_smart_undo_redo_get(rd->enventor)) return diff;
if (!enventor_obj_smart_undo_redo_get(rd->enventor)) return diff;
if (rd->smart.timer)
{
@ -74,43 +73,21 @@ smart_analyser(redoundo_data *rd, diff_data *diff)
if (!diff) return diff;
if (!rd->last_diff || (rd->last_diff->action != diff->action))
{
rd->smart.continues_input = EINA_TRUE;
return diff;
}
if (diff->length == 1 && enventor_object_auto_indent_get(rd->enventor))
if (diff->length == 1 && enventor_obj_auto_indent_get(rd->enventor))
{
if (strstr(diff->text, "<br/>")) diff->relative = EINA_TRUE;
else diff->relative = EINA_FALSE;
}
// Determine the text of diff is continuous
if (diff->action ?
((rd->last_diff->cursor_pos + rd->last_diff->length) == diff->cursor_pos) :
((diff->cursor_pos + diff->length) == rd->last_diff->cursor_pos) ||
(diff->cursor_pos == rd->last_diff->cursor_pos))
is_continues_text = EINA_TRUE;
// Analyse speed of text input and words separates
if ((rd->smart.continues_input) && (!diff->relative) &&
(isalpha(diff->text[0])) && (isalpha(rd->last_diff->text[0])) &&
(is_continues_text))
(isalpha(diff->text[0])) && (rd->last_diff && (isalpha(rd->last_diff->text[0]))))
{
diff_data *tmp = diff;
const char *text;
diff = rd->last_diff;
diff->length += tmp->length;
if (diff->action || (diff->cursor_pos == tmp->cursor_pos))
text = eina_stringshare_printf("%s%s", diff->text, tmp->text);
else
{
diff->cursor_pos = tmp->cursor_pos;
text = eina_stringshare_printf("%s%s", tmp->text, diff->text);
}
text = eina_stringshare_printf("%s%s", diff->text, tmp->text);
eina_stringshare_replace(&diff->text, text);
eina_stringshare_del(text);
rd->last_diff = eina_list_data_get(eina_list_prev(rd->current_node));

Some files were not shown because too many files have changed in this diff Show More