public static void Main(string [] args) { MainLoop.Init(); Enlightenment.Ecore.Window.Init(); Edje.Init(); window = Enlightenment.Ecore.Window.SoftwareX11New(":0", null, 0, 0, 640, 480); window.ResizeEvent += new Enlightenment.Ecore.Window.EventHandler(_xwindow_resize_cb); window.Show(); XWindow xwindow = window.SoftwareX11WindowGet(); xwindow.Dnd.Aware = 1; xwindow.Dnd.TypeSet("*", 1); if (xwindow.Dnd.TypeIsSet("*") == 1) { Enlightenment.Ecore.Events.SignalExitEvent += new Enlightenment.Ecore.Events.EventHandler(AppSignalExitHandler); Enlightenment.Ecore.Events.DndEnterEvent += new Enlightenment.Ecore.Events.EventHandler(AppDndEnterHandler); Enlightenment.Ecore.Events.DndLeaveEvent += new Enlightenment.Ecore.Events.EventHandler(AppDndLeaveHandler); Enlightenment.Ecore.Events.DndPositionEvent += new Enlightenment.Ecore.Events.EventHandler(AppDndPositionHandler); Enlightenment.Ecore.Events.DndDropEvent += new Enlightenment.Ecore.Events.EventHandler(AppDndDropHandler); Enlightenment.Ecore.Events.SelectionNotifyEvent += new Enlightenment.Ecore.Events.EventHandler(AppSelectionNotifyHandler); } Edje background = new Edje(window.Get()); if (background.FileSet(DataConfig.DATADIR + "/data/test/flower.edj", "desktop/background") == 0) { System.Console.WriteLine("Can't load edje object!"); } background.Focus = 1; background.MouseDownEvent += new Enlightenment.Evas.Item.EventHandler(EdjeMouseDownEventCallback); background.MouseInEvent += new Enlightenment.Evas.Item.EventHandler(EdjeMouseInEventCallback); background.MouseOutEvent += new Enlightenment.Evas.Item.EventHandler(EdjeMouseOutEventCallback); background.KeyDownEvent += new Enlightenment.Evas.Item.EventHandler(EdjeKeyDownEventCallback); background.Move(0, 0); background.Resize(640, 480); background.Show(); Image image = new Image(window.Get()); image.Set(DataConfig.DATADIR + "/data/test/images/e.png", null); image.Move(0, 0); image.Resize(320, 320); image.Fill = new ImageFill(0, 0, 320, 320); image.MouseDownEvent += new Enlightenment.Evas.Item.EventHandler(ImageMouseDownEventCallback); image.MouseUpEvent += new Enlightenment.Evas.Item.EventHandler(ImageMouseUpEventCallback); image.MouseMoveEvent += new Enlightenment.Evas.Item.EventHandler(ImageMouseMoveEventCallback); image.Raise(); image.Show(); /* Put back when textblock is done */ /* * TextBlock textblock = new TextBlock(window.Get()); * textblock.FormatInsert("color=#ffffffff font="+DataConfig.DATADIR+"/data/fonts/Vera.ttf size=16"); * textblock.TextInsert("This is some text for the text block!"); * textblock.FormatInsert("\n"); * textblock.TextInsert("And this text should be on another line!"); * textblock.Move(300, 300); * textblock.Resize(300, 100); * textblock.Raise(); * textblock.Show(); */ window.DataSet("image", image); window.DataSet("background", background); window.DataSet("xwindow", xwindow); MainLoop.Begin(); }
public static void Main(string [] args) { Application.Init(); Window win = new Window("EFL# Demo App"); win.Resize(640, 480); Application.EE.ResizeEvent += AppResizeHandler; /* integrate this code in the Window class */ Edje win_bg = new Edje(Application.EE.Get()); win_bg.FileSet(DataConfig.DATADIR + "/data/eblocks/themes/e17.edj", "window"); win_bg.Resize(640, 480); win_bg.Move(0, 0); win_bg.Lower(); win_bg.Show(); MenuItem item; MenuItem entry; MenuBar mb = new MenuBar(); mb.Move(0, 0); mb.Resize(640, 35); mb.Spacing = 15; item = new MenuItem("_File"); Menu file_menu = new Menu(); entry = new MenuItem(file_menu.Canvas, "_Open"); file_menu.Append(entry); entry = new MenuItem(file_menu.Canvas, "_Close"); file_menu.Append(entry); entry = new MenuItem(file_menu.Canvas, "_Save"); file_menu.Append(entry); item.SubMenu = file_menu; mb.Append(item); item = new MenuItem("_Edit"); Menu edit_menu = new Menu(); entry = new MenuItem(edit_menu.Canvas, "_Copy"); edit_menu.Append(entry); entry = new MenuItem(edit_menu.Canvas, "_Cut"); edit_menu.Append(entry); entry = new MenuItem(edit_menu.Canvas, "_Paste"); edit_menu.Append(entry); item.SubMenu = edit_menu; mb.Append(item); item = new MenuItem("_About"); //item.SubMenu = about_menu; mb.Append(item); mb.Show(); Button button; HBox box_left = new HBox(); box_left.Move(0, 37); box_left.Resize(70, 480 - 37); VBox box_icons = new VBox(); box_icons.Spacing = 0; box_icons.Resize(64, 480 - 37); button = new Button("Tile"); button.Resize(64, 64); box_icons.PackEnd(button); button = new Button("Stretch"); button.Resize(64, 64); box_icons.PackEnd(button); button = new Button("Rotate"); button.Resize(64, 64); box_icons.PackEnd(button); button = new Button("Flip"); button.Resize(64, 64); box_icons.PackEnd(button); button = new Button("Quit"); button.MouseUpEvent += new Enlightenment.Evas.Item.EventHandler(AppQuitButtonHandler); button.Resize(64, 64); box_icons.PackEnd(button); box_left.PackEnd(box_icons); Enlightenment.Eblocks.Line vline = new Enlightenment.Eblocks.Line(Application.EE.Get()); vline.Vertical = true; vline.Resize(6, 480 - 37); box_left.PackEnd(vline); box_left.Show(); dir = args[0]; imageTable = new Table(Application.EE.Get(), items); HBox box_images = new HBox(); box_images.Move(70, 37); box_images.Spacing = 0; box_images.Resize(640 - 70 - 2, 480 - 37 - 2); box_images.PackStart(imageTable); Application.EE.DataSet("box_images", box_images); Application.EE.DataSet("box_left", box_left); Application.EE.DataSet("box_icons", box_icons); Application.EE.DataSet("win_bg", win_bg); Application.EE.DataSet("vline", vline); Application.EE.DataSet("mb", mb); WaitCallback callback = new WaitCallback(Callback); ThreadPool.QueueUserWorkItem(callback); win.ShowAll(); Application.Run(); }